05_requests_ollama_chat.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from pathlib import Path
  2. import sys
  3. sys.path.append(str(Path(__file__).resolve().parents[1]))
  4. from _chapter2_config import env_value, print_dependency_hint
  5. try:
  6. import requests
  7. except ModuleNotFoundError as exc:
  8. print_dependency_hint(exc)
  9. raise SystemExit(1)
  10. def main() -> None:
  11. base_url = env_value("OLLAMA_BASE_URL", default="http://127.0.0.1:11434").rstrip("/")
  12. url = f"{base_url}/api/chat"
  13. model = env_value("OLLAMA_MODEL", default="qwen2.5:7b")
  14. headers = {"Content-Type": "application/json"}
  15. data = {
  16. "model": model,
  17. "options": {
  18. "temperature": 0.0,
  19. },
  20. "stream": False,
  21. "messages": [
  22. {
  23. "role": "system",
  24. "content": "你是谁?",
  25. }
  26. ],
  27. }
  28. response = requests.post(url, json=data, headers=headers, timeout=60)
  29. response.raise_for_status()
  30. print(response.json())
  31. if __name__ == "__main__":
  32. try:
  33. main()
  34. except Exception as exc:
  35. print(f"requests调用Ollama失败: {exc}")