Python中OpenAI ChatCompletion函数报错:对象类型不匹配问题求助
问题解决:OpenAI ChatCompletion接口messages参数错误
错误原因
报错提示"{'role': 'user', 'content': 'What is 2 + 2?'}" is not of type 'object',核心问题是你用F-string构造了字符串格式的字典模拟内容,但OpenAI的messages参数要求传入的是Python字典对象组成的列表,而非字符串。接口无法将字符串解析为它需要的结构,因此抛出类型错误。
修正后的代码
def get_response(message): response = openai.ChatCompletion.create( model='gpt-3.5-turbo', temperature=1, messages=[ {'role': 'user', 'content': message} ] ) return response.choices[0]["message"]["content"] # 调用示例 get_response('What is 2 + 2?')
补充说明
不需要将内容转换为OpenAI的特定类,直接传入标准的Python字典即可。ChatCompletion.create()接口会自动识别并处理这种字典结构,完全不需要手动用字符串模拟字典格式。
内容的提问来源于stack exchange,提问作者codeweird
相关产品推荐
相关产品推荐

