文章

OpenAi


PIP安装库

1
pip install openai
1
2
import openai
import os

设置代理(必须)

1
2
3
4
5
6
#第一种方法,借助os模块:
os.environ["http_proxy"] = "http://127.0.0.1:7890"
os.environ["https_proxy"] = "http://127.0.0.1:7890" 
#第二种方法
#openai.api_base = "https://api.openai.com/v1"
#openai.api_proxy = "http://127.0.0.1:7890"    	

设置API密钥

1
openai.api_key = "sk-key"

创建发送文本生成请求

1
2
3
'openai': 这是 OpenAI Python SDK 的模块对象,用于与 OpenAI API 进行交互。
'Completion': 这是 openai 模块中的一个类,表示文本生成任务。
'create()': 这是 Completion 类的一个方法,用于创建文本生成请求并获取生成的文本结果。
1
2
3
4
5
6
7
8
9
10
11
engine = 'text-davinci-003'
prompt = '随机写一篇文章'
response = openai.Completion.create(
    engine=model,
    prompt=prompt,
    temperature=0.4,
    max_tokens=512,
    top_p=1,
    frequency_penalty=0,
    presence_penalty=0   
)
1
2
3
4
5
6
7
8
9
'engine':必需参数,选择一个语言模型,它决定了生产文本的风格和特点。
'prompt':必需参数,用于指定生成文本的初始提示或上下文。
'max_tokens':可选参数,限制生成文本的长度,确保它不会太长
'temperature':可选参数,用于控制生成文本的随机性。较高的值(如1.0)会导致更随机的输出,较低的值(如0.2)会导致更确定性的输出。
'top_p':可选参数,用于在生成文本时控制采样的方式。它表示在采样时从概率分布中选择的最高累积概率的总和。较小的值(如0.1)会导致更严格的选择,较大的值(如1.0)会导致更宽松的选择。
'frequency_penalty':可选参数,用于控制生成文本中重复单词的惩罚程度。较高的值会降低重复单词的概率。
'presence_penalty':可选参数,用于控制生成文本中关键词出现的惩罚程度。较高的值会增加关键词的出现频率。
'logprobs':可选参数,用于返回每个生成令牌的对数概率。n:可选参数,用于指定生成的备选文本数量。默认为1,表示生成一个文本样本。
'stop':可选参数,用于指定生成文本的停止标记。当生成的文本中出现停止标记时,生成过程将终止。

生成响应

1
2
3
4
5
print(response.choices[0].text)

'response.choices[0] 表示从响应中选择第一条备选文本(索引为0),然后 .text 用于提取出该备选文本的文本内容。'

"通俗地说,假设您向模型发送了一个文本生成请求,并且得到了一个响应。如果您想获取生成文本的具体内容,您可以使用 response.choices[0].text 来获取响应中第一条生成文本的文本内容。请注意,这里的索引0表示获取第一条生成文本,如果响应中包含多个备选文本,您可以通过更改索引来访问其他备选文本的内容。"
本文由作者按照 CC BY 4.0 进行授权