ollama本地模型openai接口
python opanai接口实现
本地部署ollama大模型,ollama自带接口。ollama自己本地接口如下所示:
import requests
import json
# 设置API的URL
api_url = "http://localhost:11434" # 假设Ollama运行在本地主机的8000端口
# 设置请求头
headers = {
"Content-Type": "application/json"
}
# 设置请求数据
data = {
"model": "deepseek-r1:7b", # 指定要使用的模型
"prompt": "你是谁", # 这里填写你想要模型回答的问题或提示
# "max_tokens": 100 # 设置生成回答的最大token数
"stream": True
}
# 发送POST请求
response = requests.post(f"{api_url}/api/generate", headers=headers, data=json.dumps(data))
print(response.text)
# # 检查响应状态码
# if response.status_code == 200:
# # 解析响应内容
# result = response.text()
# print("模型回答:", result.get("response"))
# else:
# print("请求失败,状态码:", response.status_code)
ollama模型 opanai接口实现
需要注意的是,接口url地址稍微有所变化,base_url=‘http://localhost:11434/v1’
from openai import OpenAI
def chat_with_assistant(client, initial_system_message):
# 初始消息列表,包含系统角色
messages = [{"role": "system", "content": initial_system_message}]
while True:
# 获取用户输入
user_input = input("You: ")
if user_input.lower() == 'exit': # 如果用户输入'exit',则退出循环
break
# 添加用户消息到列表
messages.append({"role": "user", "content": user_input})
# 获取助手回答
response = client.chat.completions.create(
model="deepseek-r1:7b",
messages=messages
)
assistant_reply = response.choices[0].message.content
print("Assistant:", assistant_reply)
# 添加助手回答到消息列表,以保持对话的连贯性
messages.append({"role": "assistant", "content": assistant_reply})
# 创建OpenAI客户端实例
client = OpenAI(
base_url='http://localhost:11434/v1',
api_key='ollama', # required, but unused
)
# 调用函数,开始对话
chat_with_assistant(client, "You are a helpful assistant.")