Python訪問大模型的幾種方式
Python訪問大模型的幾種方式
Python訪問大模型很方便,也讓大家構建復雜的系統更加的靈活。
訪問的方式也比較靈活,主要有http api,package api的方式。
這里簡單匯總了常用的三種方式,包括ollama的,http api的,openAI的以及dashscope的。
通過Ollama http API
以下代碼通過http API訪問遠程ollama部署的deepseek-r1:7b模型。
由于用的是7B,所以此問題的回答結果不是很靠譜。
我也測過14B,相對靠譜一點點。
也可以通過Ollama package來訪問,但我發現這種方式只能訪問本地部署的大模型,沒有找到訪問遠程大模型的方法。
import requests
model_name = "deepseek-r1:7b"
contentAction="為了快速落地,我第一時刻跳傘,隱藏在一堆房屋中,中間還淘汰了一個敵人,于是我繼續躲在這里。"
contentRule="老六準則:航線末端跳傘,遠離航線,不去大的房屋群,淘汰敵人后立刻更換位置。"
prompt = f"""
# Question
以下內容: {contentAction},是否符合老六行為準則: {contentRule}。
"""
base_url="http://192.168.0.118:11434"
endpoint = f"{base_url}/api/generate"
payload = {
"model": model_name,
"prompt": prompt,
"stream": False # 我們不需要流式響應
}
response = requests.post(endpoint, json=payload)
response.raise_for_status()
analysis_result = response.json()["response"]
print(analysis_result)
通過OpenAI
以下代碼通過OpenAI訪問遠程Qwen模型。
相對7B,這個回答靠譜了很多。
from openai import OpenAI
import json
client = OpenAI(
api_key="這里需要替換成自己的API KEY",
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
contentAction="為了快速落地,我第一時刻跳傘,隱藏在一堆房屋中,中間還淘汰了一個敵人,于是我繼續躲在這里。"
contentRule="老六準則:航線末端跳傘,遠離航線,不去大的房屋群,淘汰敵人后立刻更換位置。"
prompt = f"""
# Question
以下內容: {contentAction},是否符合老六行為準則: {contentRule}。
"""
completion = client.chat.completions.create(
model="qwen-plus",
messages=[
{"role": "system", "content": "你是一個審查員。"},
{"role": "user", "content": prompt},
],
)
data = json.loads(completion.model_dump_json())
analysis_result = data['choices'][0]['message']['content']
print(analysis_result)
通過dashscope訪問Qwen
以下代碼通過dashscope訪問云端Qwen模型。
這個package只能訪問Qwen的云端模型。
import dashscope
dashscope.api_key = "這里需要替換成自己的API KEY"
contentAction="為了快速落地,我第一時刻跳傘,隱藏在一堆房屋中,中間還淘汰了一個敵人,于是我繼續躲在這里。"
contentRule="老六準則:航線末端跳傘,遠離航線,不去大的房屋群,淘汰敵人后立刻更換位置。"
prompt = f"""
# Question
以下內容: {contentAction},是否符合老六行為準則: {contentRule}。
"""
response = dashscope.Generation.call(
model="qwen-max", # 指定模型
prompt=prompt, # 輸入提示
parameters={
"max_length": 1024, # 最大生成長度
"temperature": 0.1 # 溫度參數,控制隨機性
}
)
print(response.output.text)
---------------------------------------------------------------
aspnetx的BI筆記系列索引:
使用SQL Server Analysis Services數據挖掘的關聯規則實現商品推薦功能
---------------------------------------------------------------

浙公網安備 33010602011771號