(图片来源网络,侵删)
我是Poe的忠实用户,之前写过已是ChatGPT会员,为何还充值Poe,我的深度使用分享来介绍Poe,虽然事实上,我每个月的Poe使用额度都有剩余Poe提供了API接口,可以整合到我们自己的程序中这让我思考如何有效利用API接口我也阅读了官方的API文档,并最终在GitHub上发现了一个非常实用的工具——poe-api-wrapper这个工具共享的是你在Poe的使用额度,不会额外收费https://developer.poe.com/https://github.com/snowby666/poe-api-wrapper它是Poe.com 的一个 Python API 接口库,采用 Httpx 技术使用它,你可以通过 API 接口免费连接到 ChatGPT、DALLE、Claude、Mistral、Gemini 等多种服务建议按以下操作,先运行示例了解下这个库的功能两种方式可以获得token,我用的是后者运行示例后的效果连续生成图片在Poe和GPT平台中,DALLE的图像生成速率都存在一定的限制目前,这两个平台默认都只生成一张图片参考了poe-api-wrapper仓库,我编写了一个Python代码,能够连续生成多张图片from poe_api_wrapper import PoeApiimport requestsimport os# 初始化 PoeApi 客户端token = "yourtoken"client = PoeApi(token)# 从文件中读取提示列表with open("draw-input.txt", "r") as file: prompts = file.readlines()# 去掉每行末尾的换行符,并过滤掉空行prompts = [prompt.strip() for prompt in prompts if prompt.strip()]# 定义保存图片的文件夹路径save_folder = "/Users/yourpath"# 确保保存图片的文件夹存在if not os.path.exists(save_folder): os.makedirs(save_folder)# 初始化chatCodechatCode = None# 循环遍历提示列表,并发送给 DALL-E 3for prompt in prompts: print(f"正在请求: {prompt}") for _ in range(4): # 重复生成4次图片 for chunk in client.send_message("DALL-E-3", prompt, chatCode=chatCode, timeout=60): # 如果是新的对话,保存chatCode if not chatCode and 'chatCode' in chunk: chatCode = chunk['chatCode'] print(f"新对话创建 | chatCode: {chatCode}") # 检查chunk中是否包含图片URL if 'response' in chunk and chunk['response'].startswith('!['): image_url = chunk['response'].split('(')[1].split(')')[0] print(f"生成的图片 URL: {image_url}") # 获取图片的内容 response = requests.get(image_url) if response.status_code == 200: # 从URL中提取图片文件名 filename = os.path.basename(image_url.split('?')[0]) # 定义图片保存路径 file_path = os.path.join(save_folder, filename) # 保存图片 with open(file_path, 'wb') as file: file.write(response.content) print(f"图片已保存到: {file_path}") else: print(f"下载图片失败: {response.status_code}")没多久,我就用DALLE3生成了200多张的图片代码功能说明:1. 在代码所在的文件夹中,我创建了一个名为"draw-input.txt"的文件,用于存放AI绘图的提示词文件中的每一行代表一个独立的提示词当运行代码时,它会批量处理这些提示词,每个提示词默认生成4张图片例如,如果你在这个txt文件中放入了10个提示词,并希望每个提示词生成10张图片,只需将代码中的数字4改为10,然后执行程序生成的图片可以在你的Poe网页界面中查看2. Poe目前提供了三种AI绘图选项在上述代码中,“DALL-E-3”可以直接替换为“Playground-v2”或“StableDiffusionXL”但是,DALL-E-3的生成效果通常是最佳的生成的部分图片注:上图的提示词参考了歸藏和Umesh(推特博主)连续生成对话Poe里的机器人特别多,除了官方的,我们还可以用第三方建立的,只要设置好机器人的名字就行红色方框内就是机器人bot的名字连续对话代码from poe_api_wrapper import PoeApiimport datetime# 初始化 PoeApi 客户端token = "yourtoken"client = PoeApi(token)bot = "Claude-2-100k"# 从文件中读取消息列表with open("chat-input.txt", "r") as file: messages = [line.strip() for line in file if line.strip()] # 过滤掉空行# 初始化 chatCodechat_code = None# 创建文件用于保存结果now = datetime.datetime.now()timestamp = now.strftime("%Y%m%d%H%M%S")result_file = open(f"/Users/yourpath/result_{timestamp}.md", "w")# 循环发送消息for message in messages: if chat_code: response_gen = client.send_message(bot, message, chatCode=chat_code) else: response_gen = client.send_message(bot, message) for chunk in response_gen: if 'chatCode' in chunk and not chat_code: chat_code = chunk['chatCode'] # 写入去除了前导空格的回应 result_file.write(chunk["response"].lstrip()) # 使用 lstrip() 移除左侧空格 result_file.flush() # 在每个结果后增加一个额外的空行 result_file.write("\n\n")# 关闭结果文件result_file.close()代码功能说明:1. 在代码所在的文件夹里,我创建了一个文件名为"chat-input.txt",用于存放对话的关键词文件中的每行包含一个独立的关键词执行代码后,它将自动批量处理这些关键词2. 在代码中,我设置了默认机器人为"Claude-2-100k",但你可以根据需要更换为其他机器人我已经测试了大多数官方机器人(除了Mistral-Medium之外的都可以使用),并且也试用了一些第三方机器人,它们都可以直接使用应用场景:写教程使用GPT生成的大纲作为chat-input的输入内容,执行程序后,就可以创建一个大约30kb的文件我的理解是,我们在学习时往往只关注关键点我们通常会带着具体问题去深入一个主题如果我们将一系列相关问题直接提给大型语言模型,得到的答案可能会比较泛泛因此,针对性地逐个提问更为合适这样做的好处是,每当模型回答了一个问题,它就在思考的过程中积累了经验,从而能够在之后的回答中表现得更加精准和深入应用场景-写小说我向GPT请求了一份小说大纲和20个小说标题将这些标题输入到chat-input.txt文件后,我运行了程序结果是,ChatGPT-16k机器人为我创作了超过30,000字的小说我选择ChatGPT-16k的原因是其处理速度较快,而GPT-4的速度相对较慢另外,Poe平台提供的ChatGPT-16k使用额度也比较充足生成的小说质量一般,需要优化提示词应用场景-批量写作我构想了一个有趣的应用场景:想象一下,在寒假的最后一天,小朋友需要完成30篇作文现在,我只需将这30个作文主题录入一个文本文件,运行程序,几分钟内这30篇作文就能完成,无需等待每个话题的逐一生成同样的,如果我想撰写一篇文章,围绕一个主题编写10个不同版本,然后从中选择最佳作品这就像使用GPT的DALL-E功能一样——不断追求更加精致和完美的创作(更多,更多,再更多)我会在chat-txt文件的每行中添加指令,比如“再思考一下其他修改点”、“使文章更专业”、“提高写作质量”,甚至“创作出宇宙级最佳文章”应用场景-批量检索众所周知,Perplexity.ai使用起来非常方便,但它一次只能生成一个答案现在,利用我编写的代码,只需将bot设置为"Web-Search",并把我想查询的问题批量输入到chat-txt文件中,运行程序后,它能在几分钟内完成所有搜索(Web-Search默认使用的是gpt-3.5-turbo,处理速度极快)这种批量检索方式非常适合写作,因为我可以一次性提出所有问题,程序会整合搜索结果,并提供相关索引,极大地提高了写作效率在Poe平台上,使用第三方机器人非常简便例如,我可以先利用特定的机器人来批量产生AI绘图的提示词然后,把这些提示词输入到draw-input文件中,接着就可以批量生成相应的图片了poe-api-wrapper推出的机器人群聊也很有意思我尝试了一下,设置了几个机器人模型,其中一个我特意配置成了“Web-Search”机器人,这样在对话中就能包含搜索结果我有个有趣的尝试:同时与三个不同的模型进行圆桌会议这听起来挺有趣的,对吧?这样的对话结果既会在终端上显示,同时也会在Poe的网页界面上呈现总结:1. 本文深入探讨了Poe API的高效应用及其在各种场景下的实际价值2. 通过poe-api-wrapper,我们不仅可以批量生成AI绘图和文本,还能与多种AI模型如ChatGPT、Claude、DALL-E等进行交互3. 实际案例涵盖了教程编写、小说创作、批量写作、批量检索等多个方面,展示了Poe API在提高工作效率和创意表达方面的巨大潜力4. 此外,文章还探讨了Poe平台上第三方机器人的使用和机器人群聊的趣味性
0 评论