让ai写一个 和 chatgpt交互的程序。用户在控制台输入内容来交互。
程序不一定能正常运行,但是可以参考
如果prompt参数长度过长,可以将其分成多个部分,然后将每个部分作为单独的prompt发送到OpenAI API。这样可以避免出现过长的prompt导致API请求失败的情况。以下是修改后的代码: import openai import pandas as pd import datetime openai.api_key = "YOUR_API_KEY" def chat_with_chatgpt(prompt): response = openai.Completion.create( engine="text-davinci-002", prompt=prompt, max_tokens=1024, n=1, stop=None, temperature=0.5, ) message = response.choices[0].text.strip() return message def save_chat_history(chat_history): current_time = datetime.datetime.now().strftime("%Y-%m-%d %H-%M-%S") file_name = f"chat_history_{current_time}.xlsx" df = pd.DataFrame(chat_history, columns=["User", "ChatGPT"]) df.to_excel(file_name, index=False) chat_history = [] while True: user_input = input("请输入您的问题:") if user_input == "0": save_chat_history(chat_history) break prompt_parts = [user_input[i:i+256] for i in range(0, len(user_input), 256)] chat_history.append([user_input, chat_with_chatgpt("\n".join(prompt_parts))]) print(chat_history[-1][1]) 这段代码将prompt参数分成多个部分,每个部分的长度为256个字符。然后将每个部分作为单独的prompt发送到OpenAI API。这样可以避免出现过长的prompt导致API请求失败的情况。这段代码可以在Python环境中运行,需要安装OpenAI API和Pandas库。
标签:prompt,python,bing,程序,API,user,chat,input,history From: https://www.cnblogs.com/music-liang/p/17253508.html