一、通过API调用GPT-3.5
from openai import OpenAI
import os
os.environ['OPENAI_BASE_URL']=''
os.environ['OPENAI_API_KEY']=''
client = OpenAI()
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
max_tokens=2000,
temperature=1.8,
# n=2
)
for item in completion.choices:
print(item.message.content)
print(completion)
print(completion.choices[0].message)
print(completion.choices[0].message.content)
# Hello! How can I help you today?
二、流式输出
流式输出简单理解就是模型生成一个词,就输出一个。与之对应的就是模型生成完全部输出后,在一次性全部输出。设置参数stream=true即可实现。
from openai import OpenAI
import os
os.environ['OPENAI_BASE_URL']=''
os.environ['OPENAI_API_KEY']=''
from dotenv import load_dotenv
load_dotenv()
client = OpenAI()
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
stream=True
)
print(completion)
for item in completion:
content = item.choices[0].delta.content
if content is not None:
print(content,end='')
三、查看token使用数量
调用API需要mon的,有时我们需要查看问题消耗的token数量,定夺是否需要优化提示词,进而控制成本,通过comletion.usage属性查看。
from openai import OpenAI
import os
os.environ['OPENAI_BASE_URL']=''
os.environ['OPENAI_API_KEY']=''
from dotenv import load_dotenv
load_dotenv()
client = OpenAI()
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
]
)
print(completion.usage)
# CompletionUsage(completion_tokens=9, prompt_tokens=19, total_tokens=28)