1. Mục đích
Mẫu Python này dùng để gọi Ollama API từ ứng dụng nội bộ. Trong thực tế bệnh viện, nên gọi Ollama qua API trung gian có xác thực, không để client gọi trực tiếp Ollama.
2. Cài thư viện
Nếu dùng requests:
pip install requests3. Mẫu gọi API chat
import requestsfrom typing import List, Dict, AnyOLLAMA_URL = "http://127.0.0.1:11434/api/chat"MODEL = "gemma3:4b"def chat_with_ollama(messages: List[Dict[str, str]]) -> str:payload: Dict[str, Any] = {"model": MODEL,"messages": messages,"stream": False,"options": {"temperature": 0.2,"top_p": 0.9,},}response = requests.post(OLLAMA_URL, json=payload, timeout=120)response.raise_for_status()data = response.json()return data["message"]["content"]if __name__ == "__main__":messages = [{"role": "system","content": "Bạn là trợ lý AI nội bộ bệnh viện. Không bịa số liệu hoặc căn cứ.",},{"role": "user","content": "Hãy viết dàn ý kế hoạch triển khai chatbot nội bộ cho bệnh viện.",},]answer = chat_with_ollama(messages)print(answer)
4. Mẫu gọi API generate
import requestsdef generate_text(prompt: str, model: str = "gemma3:4b") -> str:url = "http://127.0.0.1:11434/api/generate"payload = {"model": model,"prompt": prompt,"stream": False,"options": {"temperature": 0.2,},}response = requests.post(url, json=payload, timeout=120)response.raise_for_status()return response.json()["response"]if __name__ == "__main__":prompt = "Viết đoạn giới thiệu ngắn về AI local trong bệnh viện."print(generate_text(prompt))
5. Mẫu gọi API embedding
import requestsfrom typing import Listdef get_embedding(text: str, model: str = "ten-embedding-model") -> List[float]:url = "http://127.0.0.1:11434/api/embeddings"payload = {"model": model,"prompt": text,}response = requests.post(url, json=payload, timeout=120)response.raise_for_status()return response.json()["embedding"]if __name__ == "__main__":text = "Quy trình báo cáo sự cố y khoa trong bệnh viện"vector = get_embedding(text)print(len(vector))
6. Lưu ý an toàn
Trong môi trường bệnh viện:
- Không gửi dữ liệu định danh người bệnh nếu chưa kiểm soát.
- Không log toàn bộ prompt/response nhạy cảm.
- Không mở API Ollama trực tiếp cho người dùng cuối.
- Nên có API trung gian kiểm quyền, ghi log và lọc dữ liệu.
- Đăng nhập để gửi ý kiến