跳转到内容

搜索仅适用于生产版本。 尝试构建并预览网站以在本地测试。

大模型 API 调用

open开发的官方库,SDK,方便与编程调用其产品,许多模型服务商兼容

千问API调用

调用阿里百炼大模型平台。

  1. 获取客户端对象 配置api_key,以及base_url。
client = OpenAI(
# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"
# api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="http://203.0.113.10:11434/v1",
)
  1. 调用模型 model:选择所用模型 messages:提供给模型的信息,可以多个字典,每个字典包含两个key role:角色 content:内容 system:整体行为、角色和规则 “你是一个python专家” assistant:AI助手的回答,手动设定,实际并没有回答。 user:代表用户,发送问题、指令或需求
completion = client.chat.completions.create(
# 模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
model="gpt-oss:20b",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是谁?"},
],
stream=False
)
  1. 处理结果 通过response提取模型回复的东西。

历史功能,messages里面可以包含很多内容

completion = client.chat.completions.create(
model = "qwen-plus",
messages = [
{"role": "system", "content": "你是AI助理"},
{"role": "user", "content": "小红有 1 只狗"},
{"role": "system", "content": "好的"},
{"role": "user", "content": "小红又买了 1 只狗"},
{"role": "system", "content": "好的"},
{"role": "user", "content": "小红又买了 2 只猫"},
{"role": "system", "content": "好的"},
{"role": "user", "content": "小红现在有几只宠物"}
],
stream = False
)
import os
from openai import OpenAI
os.environ["DASHSCOPE_API_KEY"] = "sk-REDACTED" # 替换为你的百炼API Key
client = OpenAI(
# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
# 模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
model="qwen-plus",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是谁?"},
]
)
print(completion.model_dump_json())
import os
from openai import OpenAI
os.environ["DASHSCOPE_API_KEY"] = "sk-REDACTED" # 替换为你的百炼API Key
client = OpenAI(
# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-plus", # 此处以qwen-plus为例,可按需更换模型名称。模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
messages=[{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': '你是谁?'}],
stream=True,
stream_options={"include_usage": True}
)
for chunk in completion:
print(chunk.model_dump_json())

本地快速跑开源的大模型,并对外提供API接口

常见端口:11434

进阶:可通过反向代理等实现token认证。

ollama run model_name
completion = client.chat.completions.create(
model="qwen-plus", # 此处以qwen-plus为例,可按需更换模型名称。模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
messages=[{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': '我是谁?'}],
stream=True,
stream_options={"include_usage": True}
)
for chunk in completion:
print(chunk.model_dump_json())

通过环境变量隐藏APIKEY,避免APIKEY暴露在代码中

OPENAI_API_KEY:openai的key

DASHSCOPE_API_KEY:langchain所需

export xx="sk-sxxxx"