[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-n3d1117--chatgpt-telegram-bot":3,"tool-n3d1117--chatgpt-telegram-bot":65},[4,17,27,35,48,57],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",148568,2,"2026-04-09T23:34:24",[13,14,15],"开发框架","Agent","语言模型","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,3,"2026-04-06T11:19:32",[15,26,14,13],"图像",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":10,"last_commit_at":33,"category_tags":34,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":10,"last_commit_at":41,"category_tags":42,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85052,"2026-04-08T11:03:08",[26,43,44,45,14,46,15,13,47],"数据工具","视频","插件","其他","音频",{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":54,"last_commit_at":55,"category_tags":56,"status":16},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[15,43,46],{"id":58,"name":59,"github_repo":60,"description_zh":61,"stars":62,"difficulty_score":23,"last_commit_at":63,"category_tags":64,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[14,26,13,15,46],{"id":66,"github_repo":67,"name":68,"description_en":69,"description_zh":70,"ai_summary_zh":71,"readme_en":72,"readme_zh":73,"quickstart_zh":74,"use_case_zh":75,"hero_image_url":76,"owner_login":77,"owner_name":78,"owner_avatar_url":79,"owner_bio":80,"owner_company":81,"owner_location":82,"owner_email":83,"owner_twitter":83,"owner_website":84,"owner_url":85,"languages":86,"stars":95,"forks":96,"last_commit_at":97,"license":98,"difficulty_score":10,"env_os":99,"env_gpu":99,"env_ram":99,"env_deps":100,"category_tags":107,"github_topics":108,"view_count":10,"oss_zip_url":83,"oss_zip_packed_at":83,"status":16,"created_at":115,"updated_at":116,"faqs":117,"releases":151},6102,"n3d1117\u002Fchatgpt-telegram-bot","chatgpt-telegram-bot","🤖 A Telegram bot that integrates with OpenAI's official ChatGPT APIs to provide answers, written in Python","chatgpt-telegram-bot 是一款基于 Python 开发的开源机器人，旨在将 OpenAI 的强大能力无缝集成到 Telegram 聊天界面中。它不仅支持 ChatGPT 进行智能对话，还融合了 DALL·E 3 的图像生成、Whisper 的语音转文字以及最新的文本转语音和视觉识别功能，让用户在熟悉的聊天窗口中即可享受多模态的 AI 服务。\n\n这款工具主要解决了用户希望在不切换应用的情况下，随时随地通过手机或电脑便捷访问先进 AI 模型的需求。它自动处理对话上下文总结以节省成本，并提供详细的用量统计与预算控制，有效避免了令牌超额消耗的问题。无论是个人日常助手搭建，还是小团队内部的知识库问答，它都能提供稳定且可定制的解决方案。\n\nchatgpt-telegram-bot 非常适合具有一定技术基础的开发者、希望私有化部署 AI 服务的极客用户，以及需要为社群或团队快速构建智能助手的运营人员。其独特的技术亮点包括对 GPT-4o、o1 等最新模型的即时支持，丰富的插件系统（如天气查询、Spotify 联动），以及完善的权限管理和多语言本地化特性。只需简单的配置或通过 Doc","chatgpt-telegram-bot 是一款基于 Python 开发的开源机器人，旨在将 OpenAI 的强大能力无缝集成到 Telegram 聊天界面中。它不仅支持 ChatGPT 进行智能对话，还融合了 DALL·E 3 的图像生成、Whisper 的语音转文字以及最新的文本转语音和视觉识别功能，让用户在熟悉的聊天窗口中即可享受多模态的 AI 服务。\n\n这款工具主要解决了用户希望在不切换应用的情况下，随时随地通过手机或电脑便捷访问先进 AI 模型的需求。它自动处理对话上下文总结以节省成本，并提供详细的用量统计与预算控制，有效避免了令牌超额消耗的问题。无论是个人日常助手搭建，还是小团队内部的知识库问答，它都能提供稳定且可定制的解决方案。\n\nchatgpt-telegram-bot 非常适合具有一定技术基础的开发者、希望私有化部署 AI 服务的极客用户，以及需要为社群或团队快速构建智能助手的运营人员。其独特的技术亮点包括对 GPT-4o、o1 等最新模型的即时支持，丰富的插件系统（如天气查询、Spotify 联动），以及完善的权限管理和多语言本地化特性。只需简单的配置或通过 Docker 部署，即可拥有一个功能全面、响应流畅的专属 AI 伙伴。","# ChatGPT Telegram Bot\n![python-version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpython-3.9-blue.svg)\n[![openai-version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fopenai-1.58.1-orange.svg)](https:\u002F\u002Fopenai.com\u002F)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-GPL%202.0-brightgreen.svg)](LICENSE)\n[![Publish Docker image](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Factions\u002Fworkflows\u002Fpublish.yaml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Factions\u002Fworkflows\u002Fpublish.yaml)\n\nA [Telegram bot](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Fapi) that integrates with OpenAI's _official_ [ChatGPT](https:\u002F\u002Fopenai.com\u002Fblog\u002Fchatgpt\u002F), [DALL·E](https:\u002F\u002Fopenai.com\u002Fproduct\u002Fdall-e-2) and [Whisper](https:\u002F\u002Fopenai.com\u002Fresearch\u002Fwhisper) APIs to provide answers. Ready to use with minimal configuration required.\n\n## Screenshots\n\n### Demo\n![demo](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fn3d1117_chatgpt-telegram-bot_readme_355bf48e5b73.png)\n\n### Plugins\n![plugins](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fn3d1117_chatgpt-telegram-bot_readme_aa704f06d26d.png)\n\n## Features\n- [x] Support markdown in answers\n- [x] Reset conversation with the `\u002Freset` command\n- [x] Typing indicator while generating a response\n- [x] Access can be restricted by specifying a list of allowed users\n- [x] Docker and Proxy support\n- [x] Image generation using DALL·E via the `\u002Fimage` command\n- [x] Transcribe audio and video messages using Whisper (may require [ffmpeg](https:\u002F\u002Fffmpeg.org))\n- [x] Automatic conversation summary to avoid excessive token usage\n- [x] Track token usage per user - by [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW)\n- [x] Get personal token usage statistics via the `\u002Fstats` command - by [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW)\n- [x] User budgets and guest budgets - by [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW)\n- [x] Stream support\n- [x] GPT-4 support\n  - If you have access to the GPT-4 API, simply change the `OPENAI_MODEL` parameter to `gpt-4`\n- [x] Localized bot language\n  - Available languages :brazil: :cn: :finland: :de: :indonesia: :iran: :it: :malaysia: :netherlands: :poland: :ru: :saudi_arabia: :es: :taiwan: :tr: :ukraine: :gb: :uzbekistan: :vietnam: :israel:\n- [x] Improved inline queries support for group and private chats - by [@bugfloyd](https:\u002F\u002Fgithub.com\u002Fbugfloyd)\n  - To use this feature, enable inline queries for your bot in BotFather via the `\u002Fsetinline` [command](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Finline)\n- [x] Support *new models* [announced on June 13, 2023](https:\u002F\u002Fopenai.com\u002Fblog\u002Ffunction-calling-and-other-api-updates)\n- [x] Support *functions* (plugins) to extend the bot's functionality with 3rd party services\n  - Weather, Spotify, Web search, text-to-speech and more. See [here](#available-plugins) for a list of available plugins\n- [x] Support unofficial OpenAI-compatible APIs - by [@kristaller486](https:\u002F\u002Fgithub.com\u002Fkristaller486)\n- [x] (NEW!) Support GPT-4 Turbo and DALL·E 3 [announced on November 6, 2023](https:\u002F\u002Fopenai.com\u002Fblog\u002Fnew-models-and-developer-products-announced-at-devday) - by [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW)\n- [x] (NEW!) Text-to-speech support [announced on November 6, 2023](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Ftext-to-speech) - by [@gilcu3](https:\u002F\u002Fgithub.com\u002Fgilcu3)\n- [x] (NEW!) Vision support [announced on November 6, 2023](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fvision) - by [@gilcu3](https:\u002F\u002Fgithub.com\u002Fgilcu3)\n- [x] (NEW!) GPT-4o model support [announced on May 12, 2024](https:\u002F\u002Fopenai.com\u002Findex\u002Fhello-gpt-4o\u002F) - by [@err09r](https:\u002F\u002Fgithub.com\u002Ferr09r)\n- [x] (NEW!) o1 and o1-mini model preliminary support\n\n## Additional features - help needed!\nIf you'd like to help, check out the [issues](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues) section and contribute!  \nIf you want to help with translations, check out the [Translations Manual](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F219)\n\nPRs are always welcome!\n\n## Prerequisites\n- Python 3.9+\n- A [Telegram bot](https:\u002F\u002Fcore.telegram.org\u002Fbots#6-botfather) and its token (see [tutorial](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Ftutorial#obtain-your-bot-token))\n- An [OpenAI](https:\u002F\u002Fopenai.com) account (see [configuration](#configuration) section)\n\n## Getting started\n\n### Configuration\nCustomize the configuration by copying `.env.example` and renaming it to `.env`, then editing the required parameters as desired:\n\n| Parameter                   | Description                                                                                                                                                                                                                   |\n|-----------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `OPENAI_API_KEY`            | Your OpenAI API key, you can get it from [here](https:\u002F\u002Fplatform.openai.com\u002Faccount\u002Fapi-keys)                                                                                                                                 |\n| `TELEGRAM_BOT_TOKEN`        | Your Telegram bot's token, obtained using [BotFather](http:\u002F\u002Ft.me\u002Fbotfather) (see [tutorial](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Ftutorial#obtain-your-bot-token))                                                                  |\n| `ADMIN_USER_IDS`            | Telegram user IDs of admins. These users have access to special admin commands, information and no budget restrictions. Admin IDs don't have to be added to `ALLOWED_TELEGRAM_USER_IDS`. **Note**: by default, no admin (`-`) |\n| `ALLOWED_TELEGRAM_USER_IDS` | A comma-separated list of Telegram user IDs that are allowed to interact with the bot (use [getidsbot](https:\u002F\u002Ft.me\u002Fgetidsbot) to find your user ID). **Note**: by default, *everyone* is allowed (`*`)                       |\n\n### Optional configuration\nThe following parameters are optional and can be set in the `.env` file:\n\n#### Budgets\n| Parameter             | Description                                                                                                                                                                                                                                                                                                                                                                               | Default value      |\n|-----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------|\n| `BUDGET_PERIOD`       | Determines the time frame all budgets are applied to. Available periods: `daily` *(resets budget every day)*, `monthly` *(resets budgets on the first of each month)*, `all-time` *(never resets budget)*. See the [Budget Manual](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184) for more information                                                                  | `monthly`          |\n| `USER_BUDGETS`        | A comma-separated list of $-amounts per user from list `ALLOWED_TELEGRAM_USER_IDS` to set custom usage limit of OpenAI API costs for each. For `*`- user lists the first `USER_BUDGETS` value is given to every user. **Note**: by default, *no limits* for any user (`*`). See the [Budget Manual](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184) for more information | `*`                |\n| `GUEST_BUDGET`        | $-amount as usage limit for all guest users. Guest users are users in group chats that are not in the `ALLOWED_TELEGRAM_USER_IDS` list. Value is ignored if no usage limits are set in user budgets (`USER_BUDGETS`=`*`). See the [Budget Manual](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184) for more information                                                   | `100.0`            |\n| `TOKEN_PRICE`         | $-price per 1000 tokens used to compute cost information in usage statistics. Source: https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                          | `0.002`            |\n| `IMAGE_PRICES`        | A comma-separated list with 3 elements of prices for the different image sizes: `256x256`, `512x512` and `1024x1024`. Source: https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                  | `0.016,0.018,0.02` |\n| `TRANSCRIPTION_PRICE` | USD-price for one minute of audio transcription. Source: https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                                                       | `0.006`            |\n| `VISION_TOKEN_PRICE`  | USD-price per 1K tokens of image interpretation. Source: https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                                                       | `0.01`             |\n| `TTS_PRICES`          | A comma-separated list with prices for the tts models: `tts-1`, `tts-1-hd`. Source: https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                            | `0.015,0.030`      |\n\nCheck out the [Budget Manual](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184) for possible budget configurations.\n\n#### Additional optional configuration options\n| Parameter                           | Description                                                                                                                                                                                                                                                                             | Default value                      |\n|-------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------|\n| `ENABLE_QUOTING`                    | Whether to enable message quoting in private chats                                                                                                                                                                                                                                      | `true`                             |\n| `ENABLE_IMAGE_GENERATION`           | Whether to enable image generation via the `\u002Fimage` command                                                                                                                                                                                                                             | `true`                             |\n| `ENABLE_TRANSCRIPTION`              | Whether to enable transcriptions of audio and video messages                                                                                                                                                                                                                            | `true`                             |\n| `ENABLE_TTS_GENERATION`             | Whether to enable text to speech generation via the `\u002Ftts`                                                                                                                                                                                                                              | `true`                             |\n| `ENABLE_VISION`                     | Whether to enable vision capabilities in supported models                                                                                                                                                                                                                               | `true`                             |\n| `PROXY`                             | Proxy to be used for OpenAI and Telegram bot (e.g. `http:\u002F\u002Flocalhost:8080`)                                                                                                                                                                                                             | -                                  |\n| `OPENAI_PROXY`                      | Proxy to be used only for OpenAI (e.g. `http:\u002F\u002Flocalhost:8080`)                                                                                                                                                                                                                         | -                                  |\n| `TELEGRAM_PROXY`                    | Proxy to be used only for Telegram bot (e.g. `http:\u002F\u002Flocalhost:8080`)                                                                                                                                                                                                                   | -                                  |\n| `OPENAI_MODEL`                      | The OpenAI model to use for generating responses. You can find all available models [here](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\u002F)                                                                                                                                                    | `gpt-4o`                           |\n| `OPENAI_BASE_URL`                   | Endpoint URL for unofficial OpenAI-compatible APIs (e.g., LocalAI or text-generation-webui)                                                                                                                                                                                             | Default OpenAI API URL             |\n| `ASSISTANT_PROMPT`                  | A system message that sets the tone and controls the behavior of the assistant                                                                                                                                                                                                          | `You are a helpful assistant.`     |\n| `SHOW_USAGE`                        | Whether to show OpenAI token usage information after each response                                                                                                                                                                                                                      | `false`                            |\n| `STREAM`                            | Whether to stream responses. **Note**: incompatible, if enabled, with `N_CHOICES` higher than 1                                                                                                                                                                                         | `true`                             |\n| `MAX_TOKENS`                        | Upper bound on how many tokens the ChatGPT API will return                                                                                                                                                                                                                              | `1200` for GPT-3, `2400` for GPT-4 |\n| `VISION_MAX_TOKENS`                 | Upper bound on how many tokens vision models will return                                                                                                                                                                                                                                | `300` for gpt-4o                   |\n| `VISION_MODEL`                      | The Vision to Speech model to use. Allowed values: `gpt-4o`                                                                                                                                                                                                                             | `gpt-4o`                           |\n| `ENABLE_VISION_FOLLOW_UP_QUESTIONS` | If true, once you send an image to the bot, it uses the configured VISION_MODEL until the conversation ends. Otherwise, it uses the OPENAI_MODEL to follow the conversation. Allowed values: `true` or `false`                                                                          | `true`                             |\n| `MAX_HISTORY_SIZE`                  | Max number of messages to keep in memory, after which the conversation will be summarised to avoid excessive token usage                                                                                                                                                                | `15`                               |\n| `MAX_CONVERSATION_AGE_MINUTES`      | Maximum number of minutes a conversation should live since the last message, after which the conversation will be reset                                                                                                                                                                 | `180`                              |\n| `VOICE_REPLY_WITH_TRANSCRIPT_ONLY`  | Whether to answer to voice messages with the transcript only or with a ChatGPT response of the transcript                                                                                                                                                                               | `false`                            |\n| `VOICE_REPLY_PROMPTS`               | A semicolon separated list of phrases (i.e. `Hi bot;Hello chat`). If the transcript starts with any of them, it will be treated as a prompt even if `VOICE_REPLY_WITH_TRANSCRIPT_ONLY` is set to `true`                                                                                 | -                                  |\n| `VISION_PROMPT`                     | A phrase (i.e. `What is in this image`). The vision models use it as prompt to interpret a given image. If there is caption in the image sent to the bot, that supersedes this parameter                                                                                                | `What is in this image`            |\n| `N_CHOICES`                         | Number of answers to generate for each input message. **Note**: setting this to a number higher than 1 will not work properly if `STREAM` is enabled                                                                                                                                    | `1`                                |\n| `TEMPERATURE`                       | Number between 0 and 2. Higher values will make the output more random                                                                                                                                                                                                                  | `1.0`                              |\n| `PRESENCE_PENALTY`                  | Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far                                                                                                                                                                        | `0.0`                              |\n| `FREQUENCY_PENALTY`                 | Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far                                                                                                                                                                   | `0.0`                              |\n| `IMAGE_FORMAT`                      | The Telegram image receive mode. Allowed values: `document` or `photo`                                                                                                                                                                                                                  | `photo`                            |\n| `IMAGE_MODEL`                       | The DALL·E model to be used. Available models: `dall-e-2` and `dall-e-3`, find current available models [here](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\u002Fdall-e)                                                                                                                          | `dall-e-2`                         |\n| `IMAGE_QUALITY`                     | Quality of DALL·E images, only available for `dall-e-3`-model. Possible options: `standard` or `hd`, beware of [pricing differences](https:\u002F\u002Fopenai.com\u002Fpricing#image-models).                                                                                                          | `standard`                         |\n| `IMAGE_STYLE`                       | Style for DALL·E image generation, only available for `dall-e-3`-model. Possible options: `vivid` or `natural`. Check availbe styles [here](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fimages\u002Fcreate).                                                                              | `vivid`                            |\n| `IMAGE_SIZE`                        | The DALL·E generated image size. Must be `256x256`, `512x512`, or `1024x1024` for dall-e-2. Must be `1024x1024` for dall-e-3 models.                                                                                                                                                    | `512x512`                          |\n| `VISION_DETAIL`                     | The detail parameter for vision models, explained [Vision Guide](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fvision). Allowed values: `low` or `high`                                                                                                                                       | `auto`                             |\n| `GROUP_TRIGGER_KEYWORD`             | If set, the bot in group chats will only respond to messages that start with this keyword                                                                                                                                                                                               | -                                  |\n| `IGNORE_GROUP_TRANSCRIPTIONS`       | If set to true, the bot will not process transcriptions in group chats                                                                                                                                                                                                                  | `true`                             |\n| `IGNORE_GROUP_VISION`               | If set to true, the bot will not process vision queries in group chats                                                                                                                                                                                                                  | `true`                             |\n| `BOT_LANGUAGE`                      | Language of general bot messages. Currently available: `en`, `de`, `ru`, `tr`, `it`, `fi`, `es`, `id`, `nl`, `zh-cn`, `zh-tw`, `vi`, `fa`, `pt-br`, `uk`, `ms`, `uz`, `ar`.  [Contribute with additional translations](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F219) | `en`                               |\n| `WHISPER_PROMPT`                    | To improve the accuracy of Whisper's transcription service, especially for specific names or terms, you can set up a custom message.  [Speech to text - Prompting](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fspeech-to-text\u002Fprompting)                                                    | `-`                                |\n| `TTS_VOICE`                         | The Text to Speech voice to use. Allowed values: `alloy`, `echo`, `fable`, `onyx`, `nova`, or `shimmer`                                                                                                                                                                                 | `alloy`                            |\n| `TTS_MODEL`                         | The Text to Speech model to use. Allowed values: `tts-1` or `tts-1-hd`                                                                                                                                                                                                                  | `tts-1`                            |\n\nCheck out the [official API reference](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat) for more details.\n\n#### Functions\n| Parameter                         | Description                                                                                                                                      | Default value                       |\n|-----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|\n| `ENABLE_FUNCTIONS`                | Whether to use functions (aka plugins). You can read more about functions [here](https:\u002F\u002Fopenai.com\u002Fblog\u002Ffunction-calling-and-other-api-updates) | `true` (if available for the model) |\n| `FUNCTIONS_MAX_CONSECUTIVE_CALLS` | Maximum number of back-to-back function calls to be made by the model in a single response, before displaying a user-facing message              | `10`                                |\n| `PLUGINS`                         | List of plugins to enable (see below for a full list), e.g: `PLUGINS=wolfram,weather`                                                            | -                                   |\n| `SHOW_PLUGINS_USED`               | Whether to show which plugins were used for a response                                                                                           | `false`                             |\n\n#### Available plugins\n| Name                      | Description                                                                                                                                         | Required environment variable(s)                                     | Dependency          |\n|---------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|---------------------|\n| `weather`                 | Daily weather and 7-day forecast for any location (powered by [Open-Meteo](https:\u002F\u002Fopen-meteo.com))                                                 | -                                                                    |                     |\n| `wolfram`                 | WolframAlpha queries (powered by [WolframAlpha](https:\u002F\u002Fwww.wolframalpha.com))                                                                      | `WOLFRAM_APP_ID`                                                     | `wolframalpha`      |\n| `ddg_web_search`          | Web search (powered by [DuckDuckGo](https:\u002F\u002Fduckduckgo.com))                                                                                        | -                                                                    | `duckduckgo_search` |\n| `ddg_image_search`        | Search image or GIF (powered by [DuckDuckGo](https:\u002F\u002Fduckduckgo.com))                                                                               | -                                                                    | `duckduckgo_search` |\n| `crypto`                  | Live cryptocurrencies rate (powered by [CoinCap](https:\u002F\u002Fcoincap.io)) - by [@stumpyfr](https:\u002F\u002Fgithub.com\u002Fstumpyfr)                                 | -                                                                    |                     |\n| `spotify`                 | Spotify top tracks\u002Fartists, currently playing song and content search (powered by [Spotify](https:\u002F\u002Fspotify.com)). Requires one-time authorization. | `SPOTIFY_CLIENT_ID`, `SPOTIFY_CLIENT_SECRET`, `SPOTIFY_REDIRECT_URI` | `spotipy`           |\n| `worldtimeapi`            | Get latest world time (powered by [WorldTimeAPI](https:\u002F\u002Fworldtimeapi.org\u002F)) - by [@noriellecruz](https:\u002F\u002Fgithub.com\u002Fnoriellecruz)                  | `WORLDTIME_DEFAULT_TIMEZONE`                                         |                     |\n| `dice`                    | Send a dice in the chat!                                                                                                                            | -                                                                    |                     |\n| `youtube_audio_extractor` | Extract audio from YouTube videos                                                                                                                   | -                                                                    | `pytube`            |\n| `deepl_translate`         | Translate text to any language (powered by [DeepL](https:\u002F\u002Fdeepl.com)) - by [@LedyBacer](https:\u002F\u002Fgithub.com\u002FLedyBacer)                              | `DEEPL_API_KEY`                                                      |                     |\n| `gtts_text_to_speech`     | Text to speech (powered by Google Translate APIs)                                                                                                   | -                                                                    | `gtts`              |\n| `whois`                   | Query the whois domain database - by [@jnaskali](https:\u002F\u002Fgithub.com\u002Fjnaskali)                                                                       | -                                                                    | `whois`             |\n| `webshot`                 | Screenshot a website from a given url or domain name - by [@noriellecruz](https:\u002F\u002Fgithub.com\u002Fnoriellecruz)                                          | -                                                                    |                     |\n| `auto_tts`                | Text to speech using OpenAI APIs - by [@Jipok](https:\u002F\u002Fgithub.com\u002FJipok)                                                                            | -                                                                    |                     |\n\n#### Environment variables\n| Variable                          | Description                                                                                                                                                                                     | Default value                       |\n|-----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|\n| `WOLFRAM_APP_ID`                  | Wolfram Alpha APP ID (required only for the `wolfram` plugin, you can get one [here](https:\u002F\u002Fproducts.wolframalpha.com\u002Fsimple-api\u002Fdocumentation))                                               | -                                   |\n| `SPOTIFY_CLIENT_ID`               | Spotify app Client ID (required only for the `spotify` plugin, you can find it on the [dashboard](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F))                                                    | -                                   |\n| `SPOTIFY_CLIENT_SECRET`           | Spotify app Client Secret (required only for the `spotify` plugin, you can find it on the [dashboard](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F))                                                | -                                   |\n| `SPOTIFY_REDIRECT_URI`            | Spotify app Redirect URI (required only for the `spotify` plugin, you can find it on the [dashboard](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F))                                                 | -                                   |\n| `WORLDTIME_DEFAULT_TIMEZONE`      | Default timezone to use, i.e. `Europe\u002FRome` (required only for the `worldtimeapi` plugin, you can get TZ Identifiers from [here](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FList_of_tz_database_time_zones)) | -                                   |\n| `DUCKDUCKGO_SAFESEARCH`           | DuckDuckGo safe search (`on`, `off` or `moderate`) (optional, applies to `ddg_web_search` and `ddg_image_search`)                                                                               | `moderate`                          |\n| `DEEPL_API_KEY`                   | DeepL API key (required for the `deepl` plugin, you can get one [here](https:\u002F\u002Fwww.deepl.com\u002Fpro-api?cta=header-pro-api))                                                                       | -                                   |\n\n### Installing\nClone the repository and navigate to the project directory:\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot.git\ncd chatgpt-telegram-bot\n```\n\n#### From Source\n1. Create a virtual environment:\n```shell\npython -m venv venv\n```\n\n2. Activate the virtual environment:\n```shell\n# For Linux or macOS:\nsource venv\u002Fbin\u002Factivate\n\n# For Windows:\nvenv\\Scripts\\activate\n```\n\n3. Install the dependencies using `requirements.txt` file:\n```shell\npip install -r requirements.txt\n```\n\n4. Use the following command to start the bot:\n```\npython bot\u002Fmain.py\n```\n\n#### Using Docker Compose\n\nRun the following command to build and run the Docker image:\n```shell\ndocker compose up\n```\n\n#### Ready-to-use Docker images\nYou can also use the Docker image from [Docker Hub](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fn3d1117\u002Fchatgpt-telegram-bot):\n```shell\ndocker pull n3d1117\u002Fchatgpt-telegram-bot:latest\ndocker run -it --env-file .env n3d1117\u002Fchatgpt-telegram-bot\n```\n\nor using the [GitHub Container Registry](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpkgs\u002Fcontainer\u002Fchatgpt-telegram-bot\u002F):\n\n```shell\ndocker pull ghcr.io\u002Fn3d1117\u002Fchatgpt-telegram-bot:latest\ndocker run -it --env-file .env ghcr.io\u002Fn3d1117\u002Fchatgpt-telegram-bot\n```\n\n#### Docker manual build\n```shell\ndocker build -t chatgpt-telegram-bot .\ndocker run -it --env-file .env chatgpt-telegram-bot\n```\n\n#### Heroku\nHere is an example of `Procfile` for deploying using Heroku (thanks [err09r](https:\u002F\u002Fgithub.com\u002Ferr09r)!):\n```\nworker: python -m venv venv && source venv\u002Fbin\u002Factivate && pip install -r requirements.txt && python bot\u002Fmain.py\n```\n\n## Credits\n- [ChatGPT](https:\u002F\u002Fchat.openai.com\u002Fchat) from [OpenAI](https:\u002F\u002Fopenai.com)\n- [python-telegram-bot](https:\u002F\u002Fpython-telegram-bot.org)\n- [jiaaro\u002Fpydub](https:\u002F\u002Fgithub.com\u002Fjiaaro\u002Fpydub)\n\n## Disclaimer\nThis is a personal project and is not affiliated with OpenAI in any way.\n\n## License\nThis project is released under the terms of the GPL 2.0 license. For more information, see the [LICENSE](LICENSE) file included in the repository.\n","# ChatGPT Telegram 机器人\n![python-version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpython-3.9-blue.svg)\n[![openai-version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fopenai-1.58.1-orange.svg)](https:\u002F\u002Fopenai.com\u002F)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-GPL%202.0-brightgreen.svg)](LICENSE)\n[![发布 Docker 镜像](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Factions\u002Fworkflows\u002Fpublish.yaml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Factions\u002Fworkflows\u002Fpublish.yaml)\n\n一个与 OpenAI 的 _官方_ [ChatGPT](https:\u002F\u002Fopenai.com\u002Fblog\u002Fchatgpt\u002F)、[DALL·E](https:\u002F\u002Fopenai.com\u002Fproduct\u002Fdall-e-2) 和 [Whisper](https:\u002F\u002Fopenai.com\u002Fresearch\u002Fwhisper) API 集成的 [Telegram 机器人](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Fapi)，用于提供回答。开箱即用，只需极少配置。\n\n## 截图\n\n### 演示\n![demo](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fn3d1117_chatgpt-telegram-bot_readme_355bf48e5b73.png)\n\n### 插件\n![plugins](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fn3d1117_chatgpt-telegram-bot_readme_aa704f06d26d.png)\n\n## 特性\n- [x] 支持在回答中使用 Markdown 格式\n- [x] 使用 `\u002Freset` 命令重置对话\n- [x] 生成回复时显示打字提示\n- [x] 可通过指定允许用户列表来限制访问权限\n- [x] 支持 Docker 和代理\n- [x] 通过 `\u002Fimage` 命令使用 DALL·E 生成图像\n- [x] 使用 Whisper 转录音频和视频消息（可能需要 [ffmpeg](https:\u002F\u002Fffmpeg.org)）\n- [x] 自动总结对话以避免过度消耗 token\n- [x] 按用户跟踪 token 使用情况 - 由 [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW) 提供\n- [x] 通过 `\u002Fstats` 命令获取个人 token 使用统计信息 - 由 [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW) 提供\n- [x] 用户预算和访客预算 - 由 [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW) 提供\n- [x] 流式支持\n- [x] GPT-4 支持\n  - 如果您有权访问 GPT-4 API，只需将 `OPENAI_MODEL` 参数更改为 `gpt-4`\n- [x] 本地化机器人语言\n  - 可用语言 :brazil: :cn: :finland: :de: :indonesia: :iran: :it: :malaysia: :netherlands: :poland: :ru: :saudi_arabia: :es: :taiwan: :tr: :ukraine: :gb: :uzbekistan: :vietnam: :israel:\n- [x] 改进的内联查询支持，适用于群组和私聊 - 由 [@bugfloyd](https:\u002F\u002Fgithub.com\u002Fbugfloyd) 提供\n  - 要使用此功能，请在 BotFather 中通过 `\u002Fsetinline` [命令](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Finline)为您的机器人启用内联查询\n- [x] 支持 *2023 年 6 月 13 日宣布的新模型* (https:\u002F\u002Fopenai.com\u002Fblog\u002Ffunction-calling-and-other-api-updates)\n- [x] 支持 *函数*（插件），可通过第三方服务扩展机器人的功能\n  - 天气、Spotify、网页搜索、文本转语音等。有关可用插件的列表，请参阅 [此处](#available-plugins)\n- [x] 支持非官方的 OpenAI 兼容 API - 由 [@kristaller486](https:\u002F\u002Fgithub.com\u002Fkristaller486) 提供\n- [x] （新增！）支持 GPT-4 Turbo 和 DALL·E 3 [于 2023 年 11 月 6 日宣布] (https:\u002F\u002Fopenai.com\u002Fblog\u002Fnew-models-and-developer-products-announced-at-devday) - 由 [@AlexHTW](https:\u002F\u002Fgithub.com\u002FAlexHTW) 提供\n- [x] （新增！）文本转语音支持 [于 2023 年 11 月 6 日宣布] (https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Ftext-to-speech) - 由 [@gilcu3](https:\u002F\u002Fgithub.com\u002Fgilcu3) 提供\n- [x] （新增！）视觉支持 [于 2023 年 11 月 6 日宣布] (https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fvision) - 由 [@gilcu3](https:\u002F\u002Fgithub.com\u002Fgilcu3) 提供\n- [x] （新增！）GPT-4o 模型支持 [于 2024 年 5 月 12 日宣布] (https:\u002F\u002Fopenai.com\u002Findex\u002Fhello-gpt-4o\u002F) - 由 [@err09r](https:\u002F\u002Fgithub.com\u002Ferr09r) 提供\n- [x] （新增！）o1 和 o1-mini 模型的初步支持\n\n## 其他特性 - 需要帮助！\n如果您想帮忙，请查看 [问题](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues) 部分并贡献！如果您想协助翻译，请查看 [翻译手册](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F219)\n\n欢迎随时提交 PR！\n\n## 先决条件\n- Python 3.9+\n- 一个 [Telegram 机器人](https:\u002F\u002Fcore.telegram.org\u002Fbots#6-botfather)及其令牌（请参阅 [教程](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Ftutorial#obtain-your-bot-token)）\n- 一个 [OpenAI](https:\u002F\u002Fopenai.com) 账户（请参阅 [配置](#configuration) 部分）\n\n## 开始使用\n\n### 配置\n通过复制 `.env.example` 并将其重命名为 `.env`，然后根据需要编辑所需参数来自定义配置：\n\n| 参数                   | 描述                                                                                                                                                                                                                   |\n|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `OPENAI_API_KEY`            | 您的 OpenAI API 密钥，可从 [这里](https:\u002F\u002Fplatform.openai.com\u002Faccount\u002Fapi-keys) 获取                                                                                                                                 |\n| `TELEGRAM_BOT_TOKEN`        | 您的 Telegram 机器人令牌，使用 [BotFather](http:\u002F\u002Ft.me\u002Fbotfather) 获取（请参阅 [教程](https:\u002F\u002Fcore.telegram.org\u002Fbots\u002Ftutorial#obtain-your-bot-token))                                                                  |\n| `ADMIN_USER_IDS`            | 管理员的 Telegram 用户 ID。这些用户可以访问特殊的管理命令、信息，并且没有预算限制。管理员 ID 不必添加到 `ALLOWED_TELEGRAM_USER_IDS` 中。**注意**：默认情况下无管理员 (`-`) |\n| `ALLOWED_TELEGRAM_USER_IDS` | 允许与机器人交互的 Telegram 用户 ID 列表，以逗号分隔（使用 [getidsbot](https:\u002F\u002Ft.me\u002Fgetidsbot) 查找您的用户 ID）。**注意**：默认情况下，*所有人* 都被允许 (`*`)                       |\n\n### 可选配置\n以下参数是可选的，可以在 `.env` 文件中设置：\n\n#### 预算\n| 参数             | 描述                                                                                                                                                                                                                                                                                                                                                                               | 默认值      |\n|-----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------|\n| `BUDGET_PERIOD`       | 决定所有预算适用的时间范围。可用周期：`daily` *(每天重置预算)*、`monthly` *(每月1号重置预算)*、`all-time` *(永不重置预算)*。更多信息请参阅[预算手册](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184)                                                                  | `monthly`          |\n| `USER_BUDGETS`        | 以逗号分隔的列表，为 `ALLOWED_TELEGRAM_USER_IDS` 列表中的每个用户设置自定义的 OpenAI API 费用使用上限（单位：美元）。对于 `*` 用户列表，将 `USER_BUDGETS` 的第一个值分配给每位用户。**注意**：默认情况下，对任何用户均不设置限制（`*`）。更多信息请参阅[预算手册](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184) | `*`                |\n| `GUEST_BUDGET`        | 所有访客用户的使用上限金额（单位：美元）。访客用户是指不在 `ALLOWED_TELEGRAM_USER_IDS` 列表中的群聊用户。如果用户预算中未设置使用上限（即 `USER_BUDGETS`=`*`），则此值将被忽略。更多信息请参阅[预算手册](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184)                                                   | `100.0`            |\n| `TOKEN_PRICE`         | 每1000个 token 的美元价格，用于在使用统计中计算费用信息。数据来源：https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                          | `0.002`            |\n| `IMAGE_PRICES`        | 一个包含3个元素的逗号分隔列表，分别对应不同图像尺寸的价格：`256x256`、`512x512` 和 `1024x1024`。数据来源：https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                  | `0.016,0.018,0.02` |\n| `TRANSCRIPTION_PRICE` | 每分钟音频转录的美元价格。数据来源：https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                                                       | `0.006`            |\n| `VISION_TOKEN_PRICE`  | 每1000个 token 图像理解的美元价格。数据来源：https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                                                       | `0.01`             |\n| `TTS_PRICES`          | 一个包含两种文本转语音模型价格的逗号分隔列表：`tts-1` 和 `tts-1-hd`。数据来源：https:\u002F\u002Fopenai.com\u002Fpricing                                                                                                                                                                                                                                                                            | `0.015,0.030`      |\n\n有关可能的预算配置，请查看[预算手册](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F184)。\n\n#### 其他可选配置选项\n| 参数                           | 描述                                                                                                                                                                                                                                                                             | 默认值                      |\n|-------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------|\n| `ENABLE_QUOTING`                    | 是否在私聊中启用消息引用                                                                                                                                                                                                                                      | `true`                             |\n| `ENABLE_IMAGE_GENERATION`           | 是否通过 `\u002Fimage` 命令启用图像生成                                                                                                                                                                                                                             | `true`                             |\n| `ENABLE_TRANSCRIPTION`              | 是否启用音频和视频消息的转录功能                                                                                                                                                                                                                            | `true`                             |\n| `ENABLE_TTS_GENERATION`             | 是否通过 `\u002Ftts` 命令启用文本转语音功能                                                                                                                                                                                                                              | `true`                             |\n| `ENABLE_VISION`                     | 在支持的模型中是否启用视觉功能                                                                                                                                                                                                                               | `true`                             |\n| `PROXY`                             | 用于 OpenAI 和 Telegram 机器人代理（例如 `http:\u002F\u002Flocalhost:8080`）                                                                                                                                                                                                             | -                                  |\n| `OPENAI_PROXY`                      | 仅用于 OpenAI 的代理（例如 `http:\u002F\u002Flocalhost:8080`）                                                                                                                                                                                                                         | -                                  |\n| `TELEGRAM_PROXY`                    | 仅用于 Telegram 机器人的代理（例如 `http:\u002F\u002Flocalhost:8080`）                                                                                                                                                                                                                   | -                                  |\n| `OPENAI_MODEL`                      | 用于生成回复的 OpenAI 模型。所有可用模型可在 [这里](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\u002F) 查看                                                                                                                                                    | `gpt-4o`                           |\n| `OPENAI_BASE_URL`                   | 非官方 OpenAI 兼容 API 的端点 URL（例如 LocalAI 或 text-generation-webui）                                                                                                                                                                                             | 默认 OpenAI API URL             |\n| `ASSISTANT_PROMPT`                  | 设置助手语气和行为的系统消息                                                                                                                                                                                                          | `You are a helpful assistant.`     |\n| `SHOW_USAGE`                        | 是否在每次回复后显示 OpenAI token 使用情况信息                                                                                                                                                                                                                      | `false`                            |\n| `STREAM`                            | 是否以流式方式返回响应。**注意**：若启用且 `N_CHOICES` 大于 1，则不兼容                                                                                                                                                                                         | `true`                             |\n| `MAX_TOKENS`                        | ChatGPT API 返回的最大 token 数量上限                                                                                                                                                                                                                              | GPT-3 为 `1200`，GPT-4 为 `2400` |\n| `VISION_MAX_TOKENS`                 | 视觉模型返回的最大 token 数量上限                                                                                                                                                                                                                                | gpt-4o 为 `300`                   |\n| `VISION_MODEL`                      | 用于视觉到语音转换的模型。允许值：`gpt-4o`                                                                                                                                                                                                                             | `gpt-4o`                           |\n| `ENABLE_VISION_FOLLOW_UP_QUESTIONS` | 若为 `true`，则在向机器人发送图片后，它将一直使用配置的 VISION_MODEL 直至对话结束。否则，它将使用 OPENAI_MODEL 继续对话。允许值：`true` 或 `false`                                                                          | `true`                             |\n| `MAX_HISTORY_SIZE`                  | 为避免过度消耗 token，内存中最多保留的消息数量，超过此数量时将对对话进行摘要处理                                                                                                                                                                | `15`                               |\n| `MAX_CONVERSATION_AGE_MINUTES`      | 对话自最后一条消息起最长持续时间（分钟），超过此时间将重置对话                                                                                                                                                                 | `180`                              |\n| `VOICE_REPLY_WITH_TRANSCRIPT_ONLY`  | 是否仅用转录内容回复语音消息，还是同时提供基于转录内容的 ChatGPT 回复                                                                                                                                                                               | `false`                            |\n| `VOICE_REPLY_PROMPTS`               | 由分号分隔的短语列表（如 `Hi bot;Hello chat`）。若转录内容以其中任一短语开头，则即使 `VOICE_REPLY_WITH_TRANSCRIPT_ONLY` 设置为 `true`，也会被视为提示语                                                                                 | -                                  |\n| `VISION_PROMPT`                     | 一句短语（如 `What is in this image`）。视觉模型会将其作为提示来解读所上传的图片。若发送给机器人的图片带有说明文字，则该说明文字将覆盖此参数                                                                                                | `What is in this image`            |\n| `N_CHOICES`                         | 对每条输入消息生成的回答数量。**注意**：若启用 `STREAM`，将此值设置为大于 1 将无法正常工作                                                                                                                                    | `1`                                |\n| `TEMPERATURE`                       | 介于 0 和 2 之间的数值。数值越高，输出越随机                                                                                                                                                                                                                  | `1.0`                              |\n| `PRESENCE_PENALTY`                  | 介于 -2.0 和 2.0 之间的数值。正值会根据新 token 是否已出现在文本中对其惩罚                                                                                                                                                                        | `0.0`                              |\n| `FREQUENCY_PENALTY`                 | 介于 -2.0 和 2.0 之间的数值。正值会根据新 token 在文本中出现的频率对其进行惩罚                                                                                                                                                                   | `0.0`                              |\n| `IMAGE_FORMAT`                      | Telegram 接收图片的模式。允许值：`document` 或 `photo`                                                                                                                                                                                                                  | `photo`                            |\n| `IMAGE_MODEL`                       | 要使用的 DALL·E 模型。可用模型有 `dall-e-2` 和 `dall-e-3`，当前可用模型可在 [这里](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\u002Fdall-e) 查看                                                                                                                          | `dall-e-2`                         |\n| `IMAGE_QUALITY`                     | DALL·E 图像的质量，仅适用于 `dall-e-3` 模型。可选值：`standard` 或 `hd`，请注意 [定价差异](https:\u002F\u002Fopenai.com\u002Fpricing#image-models)。                                                                                                          | `standard`                         |\n| `IMAGE_STYLE`                       | DALL·E 图像生成的风格，仅适用于 `dall-e-3` 模型。可选值：`vivid` 或 `natural`。可用风格可在 [这里](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fimages\u002Fcreate) 查看。                                                                              | `vivid`                            |\n| `IMAGE_SIZE`                        | DALL·E 生成的图片尺寸。对于 dall-e-2，必须是 `256x256`、`512x512` 或 `1024x1024`；对于 dall-e-3 模型，则必须是 `1024x1024`。                                                                                                                                                    | `512x512`                          |\n| `VISION_DETAIL`                     | 视觉模型的细节参数，详见 [Vision Guide](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fvision)。允许值：`low` 或 `high`                                                                                                                                       | `auto`                             |\n| `GROUP_TRIGGER_KEYWORD`             | 若设置，群聊中的机器人仅会对以该关键词开头的消息做出回应                                                                                                                                                                                               | -                                  |\n| `IGNORE_GROUP_TRANSCRIPTIONS`       | 若设置为 `true`，机器人将不会处理群聊中的转录内容                                                                                                                                                                                                                  | `true`                             |\n| `IGNORE_GROUP_VISION`               | 若设置为 `true`，机器人将不会处理群聊中的视觉查询                                                                                                                                                                                                                  | `true`                             |\n| `BOT_LANGUAGE`                      | 机器人通用消息的语言。目前支持的语言有：`en`、`de`、`ru`、`tr`、`it`、`fi`、`es`、`id`、`nl`、`zh-cn`、`zh-tw`、`vi`、`fa`、`pt-br`、`uk`、`ms`、`uz`、`ar`。[欢迎贡献更多语言翻译](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fdiscussions\u002F219) | `en`                               |\n| `WHISPER_PROMPT`                    | 为提高 Whisper 转录服务的准确性，尤其是针对特定名称或术语，可以设置自定义提示。[Speech to text - Prompting](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fspeech-to-text\u002Fprompting)                                                    | `-`                                |\n| `TTS_VOICE`                         | 要使用的文本转语音声音。允许值：`alloy`、`echo`、`fable`、`onyx`、`nova` 或 `shimmer`                                                                                                                                                                                 | `alloy`                            |\n| `TTS_MODEL`                         | 要使用的文本转语音模型。允许值：`tts-1` 或 `tts-1-hd`                                                                                                                                                                                                                  | `tts-1`                            |\n\n更多详情请查看[官方 API 参考文档](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat)。\n\n#### 函数\n| 参数                         | 描述                                                                                                                                      | 默认值                       |\n|-----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|\n| `ENABLE_FUNCTIONS`                | 是否使用函数（又称插件）。您可以[此处](https:\u002F\u002Fopenai.com\u002Fblog\u002Ffunction-calling-and-other-api-updates)了解更多关于函数的信息 | `true`（如果模型支持） |\n| `FUNCTIONS_MAX_CONSECUTIVE_CALLS` | 模型在单次响应中可连续调用的最大函数次数，超过此值将显示面向用户的消息              | `10`                                |\n| `PLUGINS`                         | 要启用的插件列表（完整列表见下文），例如：`PLUGINS=wolfram,weather`                                                            | -                                   |\n| `SHOW_PLUGINS_USED`               | 是否显示本次响应中使用了哪些插件                                                                                           | `false`                             |\n\n#### 可用插件\n| 名称                      | 描述                                                                                                                                         | 必需的环境变量                                     | 依赖          |\n|---------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|---------------------|\n| `weather`                 | 提供任何地点的每日天气及未来7天的预报（由[Open-Meteo](https:\u002F\u002Fopen-meteo.com)提供支持）                                                 | -                                                                    |                     |\n| `wolfram`                 | WolframAlpha 查询（由[WolframAlpha](https:\u002F\u002Fwww.wolframalpha.com)提供支持）                                                                      | `WOLFRAM_APP_ID`                                                     | `wolframalpha`      |\n| `ddg_web_search`          | 网页搜索（由[DuckDuckGo](https:\u002F\u002Fduckduckgo.com)提供支持）                                                                                        | -                                                                    | `duckduckgo_search` |\n| `ddg_image_search`        | 图片或 GIF 搜索（由[DuckDuckGo](https:\u002F\u002Fduckduckgo.com)提供支持）                                                                               | -                                                                    | `duckduckgo_search` |\n| `crypto`                  | 实时加密货币汇率（由[CoinCap](https:\u002F\u002Fcoincap.io)提供支持）——由[@stumpyfr](https:\u002F\u002Fgithub.com\u002Fstumpyfr)开发                                 | -                                                                    |                     |\n| `spotify`                 | Spotify 热门歌曲\u002F艺人、当前播放的歌曲以及内容搜索（由[Spotify](https:\u002F\u002Fspotify.com)提供支持）。需要进行一次性授权。 | `SPOTIFY_CLIENT_ID`、`SPOTIFY_CLIENT_SECRET`、`SPOTIFY_REDIRECT_URI` | `spotipy`           |\n| `worldtimeapi`            | 获取最新的世界时间（由[WorldTimeAPI](https:\u002F\u002Fworldtimeapi.org\u002F)提供支持）——由[@noriellecruz](https:\u002F\u002Fgithub.com\u002Fnoriellecruz)开发                  | `WORLDTIME_DEFAULT_TIMEZONE`                                         |                     |\n| `dice`                    | 在聊天中发送一个骰子！                                                                                                                            | -                                                                    |                     |\n| `youtube_audio_extractor` | 从 YouTube 视频中提取音频                                                                                                                   | -                                                                    | `pytube`            |\n| `deepl_translate`         | 将文本翻译成任意语言（由[DeepL](https:\u002F\u002Fdeepl.com)提供支持）——由[@LedyBacer](https:\u002F\u002Fgithub.com\u002FLedyBacer)开发                              | `DEEPL_API_KEY`                                                      |                     |\n| `gtts_text_to_speech`     | 文本转语音（由 Google Translate API 提供支持）                                                                                                   | -                                                                    | `gtts`              |\n| `whois`                   | 查询 WHOIS 域名数据库——由[@jnaskali](https:\u002F\u002Fgithub.com\u002Fjnaskali)开发                                                                       | -                                                                    | `whois`             |\n| `webshot`                 | 根据给定的 URL 或域名截取网站截图——由[@noriellecruz](https:\u002F\u002Fgithub.com\u002Fnoriellecruz)开发                                          | -                                                                    |                     |\n| `auto_tts`                | 使用 OpenAI API 进行文本转语音——由[@Jipok](https:\u002F\u002Fgithub.com\u002FJipok)开发                                                                            | -                                                                    |                     |\n\n#### 环境变量\n| 变量                          | 描述                                                                                                                                                                                     | 默认值                       |\n|-----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|\n| `WOLFRAM_APP_ID`                  | Wolfram Alpha 应用程序 ID（仅 `wolfram` 插件需要，可[在此](https:\u002F\u002Fproducts.wolframalpha.com\u002Fsimple-api\u002Fdocumentation)获取）                                               | -                                   |\n| `SPOTIFY_CLIENT_ID`               | Spotify 应用程序客户端 ID（仅 `spotify` 插件需要，可在[开发者控制台](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F)找到）                                                    | -                                   |\n| `SPOTIFY_CLIENT_SECRET`           | Spotify 应用程序客户端密钥（仅 `spotify` 插件需要，可在[开发者控制台](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F)找到）                                                | -                                   |\n| `SPOTIFY_REDIRECT_URI`            | Spotify 应用程序重定向 URI（仅 `spotify` 插件需要，可在[开发者控制台](https:\u002F\u002Fdeveloper.spotify.com\u002Fdashboard\u002F)找到）                                                 | -                                   |\n| `WORLDTIME_DEFAULT_TIMEZONE`      | 默认时区，例如 `Europe\u002FRome`（仅 `worldtimeapi` 插件需要，时区标识符可从[这里](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FList_of_tz_database_time_zones)获取） | -                                   |\n| `DUCKDUCKGO_SAFESEARCH`           | DuckDuckGo 安全搜索设置（`on`、`off` 或 `moderate`）（可选，适用于 `ddg_web_search` 和 `ddg_image_search`）                                                                               | `moderate`                          |\n| `DEEPL_API_KEY`                   | DeepL API 密钥（`deepl` 插件需要，可[在此](https:\u002F\u002Fwww.deepl.com\u002Fpro-api?cta=header-pro-api)获取）                                                                       | -                                   |\n\n\n\n### 安装\n克隆仓库并进入项目目录：\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot.git\ncd chatgpt-telegram-bot\n```\n\n#### 从源码安装\n1. 创建虚拟环境：\n```shell\npython -m venv venv\n```\n\n2. 激活虚拟环境：\n```shell\n# 对于 Linux 或 macOS：\nsource venv\u002Fbin\u002Factivate\n\n# 对于 Windows：\nvenv\\Scripts\\activate\n```\n\n3. 使用 `requirements.txt` 文件安装依赖项：\n```shell\npip install -r requirements.txt\n```\n\n4. 使用以下命令启动机器人：\n```\npython bot\u002Fmain.py\n```\n\n#### 使用 Docker Compose\n\n运行以下命令以构建并运行 Docker 镜像：\n```shell\ndocker compose up\n```\n\n#### 即用型 Docker 镜像\n您也可以使用 [Docker Hub](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fn3d1117\u002Fchatgpt-telegram-bot) 上的 Docker 镜像：\n```shell\ndocker pull n3d1117\u002Fchatgpt-telegram-bot:latest\ndocker run -it --env-file .env n3d1117\u002Fchatgpt-telegram-bot\n```\n\n或者使用 [GitHub Container Registry](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpkgs\u002Fcontainer\u002Fchatgpt-telegram-bot\u002F)：\n\n```shell\ndocker pull ghcr.io\u002Fn3d1117\u002Fchatgpt-telegram-bot:latest\ndocker run -it --env-file .env ghcr.io\u002Fn3d1117\u002Fchatgpt-telegram-bot\n```\n\n#### 手动构建 Docker 镜像\n```shell\ndocker build -t chatgpt-telegram-bot .\ndocker run -it --env-file .env chatgpt-telegram-bot\n```\n\n#### Heroku\n以下是使用 Heroku 部署的 `Procfile` 示例（感谢 [err09r](https:\u002F\u002Fgithub.com\u002Ferr09r)！）：\n```\nworker: python -m venv venv && source venv\u002Fbin\u002Factivate && pip install -r requirements.txt && python bot\u002Fmain.py\n```\n\n## 致谢\n- [ChatGPT](https:\u002F\u002Fchat.openai.com\u002Fchat) 来自 [OpenAI](https:\u002F\u002Fopenai.com)\n- [python-telegram-bot](https:\u002F\u002Fpython-telegram-bot.org)\n- [jiaaro\u002Fpydub](https:\u002F\u002Fgithub.com\u002Fjiaaro\u002Fpydub)\n\n## 免责声明\n本项目为个人项目，与 OpenAI 无任何关联。\n\n## 许可证\n本项目根据 GPL 2.0 许可证发布。更多信息请参阅仓库中包含的 [LICENSE](LICENSE) 文件。","# ChatGPT Telegram Bot 快速上手指南\n\n## 环境准备\n\n在开始之前，请确保满足以下前置条件：\n\n*   **操作系统**：Linux, macOS 或 Windows\n*   **Python 版本**：3.9 或更高版本\n*   **依赖项**：\n    *   一个 **Telegram Bot Token**（通过 @BotFather 获取）\n    *   一个 **OpenAI API Key**（需具备访问权限）\n    *   （可选）若需处理音视频转录功能，建议安装 `ffmpeg`\n\n## 安装步骤\n\n### 1. 克隆项目\n从 GitHub 拉取最新代码：\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot.git\ncd chatgpt-telegram-bot\n```\n\n### 2. 创建虚拟环境并安装依赖\n推荐使用 Python 虚拟环境以避免依赖冲突：\n```bash\npython -m venv venv\nsource venv\u002Fbin\u002Factivate  # Windows 用户请使用: venv\\Scripts\\activate\npip install -r requirements.txt\n```\n> **国内加速提示**：如遇下载缓慢，可使用清华源加速安装：\n> `pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n\n### 3. 配置环境变量\n复制示例配置文件并重命名为 `.env`：\n```bash\ncp .env.example .env\n```\n编辑 `.env` 文件，填入必要的参数：\n```ini\n# OpenAI API 密钥\nOPENAI_API_KEY=sk-your-openai-api-key\n\n# Telegram Bot Token (从 @BotFather 获取)\nTELEGRAM_BOT_TOKEN=your-telegram-bot-token\n\n# 允许使用的用户 ID (留空或填 * 表示允许所有人，建议填写具体 ID 以限制访问)\n# 可通过 @getidsbot 查询你的 Telegram User ID\nALLOWED_TELEGRAM_USER_IDS=*\n\n# 管理员 ID (拥有特殊命令权限且无预算限制，多个 ID 用逗号分隔)\nADMIN_USER_IDS=-\n```\n\n## 基本使用\n\n### 启动机器人\n在终端中运行以下命令启动服务：\n```bash\npython bot.py\n```\n若看到类似 `Starting bot...` 的日志且无报错，即表示启动成功。\n\n### 测试交互\n1. 打开 Telegram，找到你创建的机器人。\n2. 发送任意文本消息（例如：\"Hello\"），机器人将调用 ChatGPT 返回回答。\n3. **常用命令**：\n   - `\u002Freset`：重置当前对话上下文。\n   - `\u002Fimage \u003C描述>`：生成图片（需开启 `ENABLE_IMAGE_GENERATION`）。\n   - `\u002Fstats`：查看个人 Token 使用统计（需配置预算功能）。\n\n### 进阶提示\n*   **模型切换**：如需使用 GPT-4 或 GPT-4o，请在 `.env` 中添加或修改 `OPENAI_MODEL=gpt-4` 或 `OPENAI_MODEL=gpt-4o`。\n*   **Docker 部署**：项目支持 Docker 运行，若已安装 Docker，可直接使用 `docker-compose up -d` 启动（需先配置 `.env`）。","某跨国远程开发团队日常依赖 Telegram 进行即时沟通，需要在移动端快速解决代码报错、生成测试数据及查询技术文档。\n\n### 没有 chatgpt-telegram-bot 时\n- 成员遇到紧急 Bug 时，必须中断聊天流程，切换至浏览器打开网页版 ChatGPT，复制粘贴问题后再将答案传回群组，操作繁琐且打断思路。\n- 语音站会中产生的灵感或报错描述无法直接转化为文本方案，必须手动转录或打字复述，导致信息流失和效率低下。\n- 团队难以管控 API 使用成本，缺乏个人用量统计，常出现个别成员过度调用导致团队预算超支却无法追溯的情况。\n- 需要绘图或查询实时天气等扩展功能时，不得不分别打开多个独立工具或网站，无法在单一对话窗口内完成闭环。\n\n### 使用 chatgpt-telegram-bot 后\n- 开发者直接在群聊中通过 `\u002Freset` 重置上下文或发送代码片段，机器人即刻返回带 Markdown 格式化的修复建议，实现“提问即解决”的无缝体验。\n- 利用 Whisper 集成能力，成员直接发送语音消息即可自动转写并获取技术分析结果，甚至支持 GPT-4o 视觉模型直接解读截图中的报错日志。\n- 管理员可配置用户预算与配额，并通过 `\u002Fstats` 命令实时查看每位成员的 Token 消耗明细，有效防止资源滥用并优化成本分配。\n- 通过插件系统，团队能在同一对话框内直接调用 `\u002Fimage` 生成原型图或查询外部 API，无需跳转即可满足编码、绘图及信息查询的多重需求。\n\nchatgpt-telegram-bot 将强大的 AI 能力无缝嵌入团队现有的沟通流中，把碎片化的工具操作转化为高效的自然语言交互，显著提升了远程协作的响应速度与智能化水平。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fn3d1117_chatgpt-telegram-bot_355bf48e.png","n3d1117","Edoardo","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fn3d1117_80cce731.jpg","tie me to the rotten deck","iOS Engineer","Copenhagen, Denmark",null,"edoardo.fyi","https:\u002F\u002Fgithub.com\u002Fn3d1117",[87,91],{"name":88,"color":89,"percentage":90},"Python","#3572A5",99.8,{"name":92,"color":93,"percentage":94},"Dockerfile","#384d54",0.2,3453,1556,"2026-04-09T21:43:50","GPL-2.0","未说明",{"notes":101,"python":102,"dependencies":103},"该工具主要作为 API 客户端运行，对本地硬件要求极低。需要配置 OpenAI API 密钥和 Telegram Bot Token。若需使用语音\u002F视频转录功能，系统需安装 ffmpeg。支持 Docker 部署及代理设置。","3.9+",[104,105,106],"openai==1.58.1","python-telegram-bot","ffmpeg (可选，用于音频\u002F视频转录)",[47,15],[109,110,111,112,113,114],"chatgpt","openai","python","telegram-bot","dall-e","whisper","2026-03-27T02:49:30.150509","2026-04-10T11:24:11.070727",[118,123,128,133,138,143,147],{"id":119,"question_zh":120,"answer_zh":121,"source_url":122},27643,"安装或运行时出现 \"NetworkError: httpx.ConnectError: All connection attempts failed\" 网络错误怎么办？","尝试清空 .env 文件中的所有内容后重新运行，这通常能解决连接问题。如果问题依旧，请检查网络连接或代理设置。","https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues\u002F81",{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},27644,"在 .env 中配置了插件（PLUGINS）但机器人仍然表现为离线状态，无法使用插件功能？","请检查以下两点：1. 确保环境变量名拼写正确，是 `PLUGINS` 而不是 `PLGUINS`；2. 插件列表中不要包含空格，应将 `PLUGINS=weather, ddg_web_search` 修改为 `PLUGINS=weather,ddg_web_search`（去除逗号后的空格）。","https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues\u002F537",{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},27645,"如何设置用户的每日使用预算（Daily Budget），而不是每月预算？","可以通过设置环境变量 `BUDGET_PERIOD=daily` 来启用每日预算模式。配合 `MONTHLY_USER_BUDGETS`（此时作为每日额度）使用，即可限制用户每天的 Token 消耗量。","https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues\u002F106",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},27646,"升级版本后（如 v0.1.8），除了 help 命令外其他功能均失效，或者出现 \"undefined key 'guests'\" 错误？","这通常是由于 Docker 权限问题或依赖管理冲突导致的。解决方案包括：1. 修改 Dockerfile，移除 `pipenv` 层，直接使用 `requirements.txt` 安装依赖（可通过 `pipenv lock --requirements > requirements.txt` 生成该文件）；2. 确保容器内用户权限配置正确。建议拉取最新代码并重新构建 Docker 镜像。","https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues\u002F78",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},27647,"如何在群组聊天中设置多个触发词（Trigger Words）来激活机器人？","虽然具体配置语法可能随版本更新，但遇到此类配置问题时，通常是因为 `.env` 文件中的引号格式与 Docker 运行环境冲突。建议尝试去掉环境变量值周围的双引号，或者在 docker-compose 文件中正确使用单引号包裹包含特殊字符的值。如果问题复杂，可以参考社区中关于 Docker 环境变量引号处理的讨论。","https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fissues\u002F140",{"id":144,"question_zh":145,"answer_zh":146,"source_url":132},27648,"如何实现全局共享预算（Global Budget），让群组中的所有成员共用一个额度，而不是每人单独计算？","可以利用 `MONTHLY_GUEST_BUDGET` 来实现类似效果。将 `ALLOWED_TELEGRAM_USER_IDS` 设置为特定的管理员 ID（不要设为 *），这样不在允许列表中的群组成员被视为“访客”，他们将共享 `MONTHLY_GUEST_BUDGET` 设定的总额度。",{"id":148,"question_zh":149,"answer_zh":150,"source_url":122},27649,"在 Windows 上运行时报错 \"FileNotFoundError: [WinError 2]\" 且 Telegram 提示 \"Unsupported file type\"？","这是一个已知的 Windows 兼容性问题，通常与音频处理或进程创建有关。由于涉及系统底层调用，建议用户在 GitHub 上提交新的 Issue，并提供详细的错误日志、复现步骤以及使用的音频文件，以便开发者针对 Windows 环境进行修复。",[152,157,162,167,172,177,182,187,192,197,202,207,212,217,222,227,232,237,242,247],{"id":153,"version":154,"summary_zh":155,"released_at":156},180831,"0.4.2","## 变更内容\n* 修复：由 @gnzng 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F624 中修复了 dice.py 文件\n* 内联模式修复：由 @OKyryllov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F582 中完成\n* 支持 `gpt-4o` 和 `gpt-4o-mini` 模型\n* 废弃 `gpt-4-vision-preview` 模型\n* 初步支持 `o1` 系列模型\n* 移除 DDG 翻译插件（API 已不再可用）\n* 其他 minor 修复，更新了依赖项\n* AR 语言中的乌克兰语短语由 @OKyryllov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F584 中修复\n\n## 新贡献者\n* @gnzng 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F624 中完成了首次贡献\n* @OKyryllov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F582 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.4.1...0.4.2","2024-12-28T11:20:11",{"id":158,"version":159,"summary_zh":160,"released_at":161},180832,"0.4.1","## 变更内容\n* 更新 translations.json，添加了除英文外其他语言版本中遗漏的 `stats_vision` 和 `vision_fail`，由 @yurnov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F519 中完成。\n* DeepL 插件修复：避免响应中出现包含非 ANSI 字符的 Unicode 转义字符，由 @yurnov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F542 中完成。\n* 添加 gpt-3.5-turbo-0125 模型，由 @yurnov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F546 中完成。\n* 添加 gpt-4-0125-preview 和 gpt-4-turbo-preview，由 @gianlucaalfa 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F523 中完成。\n* 增加对 gpt-4-turbo-preview 的支持，由 @olebedev 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F559 中完成。\n* gpt-4-turbo，由 @upstream-team 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F560 中完成。\n* 移除不必要的 f-string 格式化字符串，由 @pixeeai 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F561 中完成。\n* 将 IpLocationPlugin 添加到 PluginManager，由 @mac-zhou 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F551 中完成。\n* 在 translations.json 中添加希伯来语，由 @ShadovvBeast 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F557 中完成。\n* 添加 gpt-4o 模型，由 @err09r 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F569 中完成。\n* 更新依赖项。\n\n## 新贡献者\n* @yurnov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F519 中完成了首次贡献。\n* @gianlucaalfa 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F523 中完成了首次贡献。\n* @olebedev 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F559 中完成了首次贡献。\n* @upstream-team 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F560 中完成了首次贡献。\n* @pixeeai 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F561 中完成了首次贡献。\n* @mac-zhou 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F551 中完成了首次贡献。\n* @ShadovvBeast 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F557 中完成了首次贡献。\n* @err09r 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F569 中完成了首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.4.0...0.4.1","2024-05-14T15:13:58",{"id":163,"version":164,"summary_zh":165,"released_at":166},180833,"0.4.0","### 支持 GPT-4 Turbo、DALL·E 3、文本转语音和视觉功能！🎉\n\n## 变更内容\n* 只有在配置中启用时才显示“\u002Fimage”命令，由 @Raixs 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F406 中实现。\n* 为 Whisper 添加“提示”功能，由 @Raixs 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F418 中实现。\n* 新增马来语翻译，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F442 中完成。\n* 新增乌兹别克语翻译，由 @mirmakhamat 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F444 中完成。\n* 添加 128k 模型和 DALL·E 3，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F448 中实现。\n* 添加对 OpenAI 兼容 API 的支持文档，由 @kristaller486 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F450 中完成。\n* 添加图片接收模式，由 @gilcu3 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F452 中实现。\n* 将 openai 更新至 1.1.1 版本，由 @gilcu3 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F453 中完成。\n* 文本转语音支持（开发中），由 @gilcu3 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F456 中实现。\n* 将 TTS 价格信息添加到 README 和示例环境文件中，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F466 中完成。\n* 视觉模型支持（开发中），由 @gilcu3 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F457 中实现。\n* 分离代理设置，由 @Keller18306 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F474 中完成。\n* 向 translations.json 文件中添加波兰语翻译，由 @Rafael-6fx 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F479 中完成。\n* 将波兰语加入 README.md 中的语言列表，由 @Rafael-6fx 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F480 中完成。\n* 阿拉伯语翻译更新，由 @EyadMahm0ud 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F482 中完成。\n* 添加 auto_tts 插件，由 @Jipok 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F468 中完成。\n\n## 新贡献者\n* @Raixs 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F406 中完成了首次贡献。\n* @mirmakhamat 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F444 中完成了首次贡献。\n* @kristaller486 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F450 中完成了首次贡献。\n* @gilcu3 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F452 中完成了首次贡献。\n* @Keller18306 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F474 中完成了首次贡献。\n* @Rafael-6fx 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F479 中完成了首次贡献。\n* @EyadMahm0ud 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F482 中完成了首次贡献。\n* @Jipok 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F468 中完成了首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.3.1...0.4.0","2023-12-11T19:49:50",{"id":168,"version":169,"summary_zh":170,"released_at":171},180834,"0.3.1","## 变更内容\n* 功能新增：由 @noriellecruz 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F395 中添加的网站截图插件\n* 修复：当网站加载较慢时，截图无法正常显示的问题，由 @noriellecruz 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F397 中修复\n* 所有插件依赖现均已包含在 requirements.txt 文件中（修复 #398）\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.3.0...0.3.1","2023-08-05T11:54:56",{"id":173,"version":174,"summary_zh":175,"released_at":176},180835,"0.3.0","## 插件上线啦！🎉  \n你现在可以使用第三方服务来扩展机器人的功能了。更多信息请查看[更新后的 README](https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot#functions)！\n\n## 变更内容\n* （修复）在总结后添加提示，由 @stanislavlysenko0912 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F353 中完成  \n* 改进 zh-tw 正体中文翻译，由 @PeterDaveHello 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F361 中完成  \n* 新特性：新增获取时间的插件，由 @noriellecruz 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F360 中完成  \n* 新增 DeepL 翻译插件，由 @LedyBacer 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F359 中完成  \n* （修复）传递上下文问题，由 @stanislavlysenko0912 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F351 中完成  \n* whois 插件，由 @jnaskali 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F378 中完成  \n* **支持插件功能**，由 @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F346 中完成  \n\n## 新贡献者\n* @noriellecruz 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F360 中完成了首次贡献  \n* @LedyBacer 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F359 中完成了首次贡献  \n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.6...0.3.0","2023-08-04T16:42:58",{"id":178,"version":179,"summary_zh":180,"released_at":181},180836,"0.2.6","## 变更内容\n* @aes-alienrip 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F273 中添加了繁体中文(zh-tw)支持，并将中文(cn)重命名为简体中文(zh-cn)\n* @bugfloyd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F274 中添加了波斯语（法尔西语）翻译\n* @jnaskali 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F279 中添加了芬兰语翻译\n* @pintman 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F280 中修复了缺失的逗号\n* @BjornB2 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F284 中更新了 translations.json 文件\n* @stanislavlysenko0912 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F298 中添加了引用回复消息的功能\n* @gkpiccoli 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F300 中提供了葡萄牙语（巴西）翻译\n* @danfmaia 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F318 中修复了转录价格问题\n* @nmeln 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F321 中添加了乌克兰语翻译\n* @n3d1117 使用 tenacity 库实现了在被限流时自动重试功能，相关更改见 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F341\n* @n3d1117 更新了依赖项并支持新发布的模型，相关更改见 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F340\n\n## 新贡献者\n* @aes-alienrip 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F273 中完成了首次贡献\n* @jnaskali 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F279 中完成了首次贡献\n* @pintman 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F280 中完成了首次贡献\n* @stanislavlysenko0912 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F298 中完成了首次贡献\n* @gkpiccoli 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F300 中完成了首次贡献\n* @danfmaia 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F318 中完成了首次贡献\n* @nmeln 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F321 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.5...0.2.6","2023-06-14T17:36:08",{"id":183,"version":184,"summary_zh":185,"released_at":186},180837,"0.2.5","## 变更内容\n* @jvican 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F237 中添加了西班牙语翻译\n* @bugfloyd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F235 中为内联查询回调响应添加了流式支持\n* @Am1nCmd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F239 中修复了印尼语翻译\n* @Am1nCmd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F240 中添加了印尼语翻译\n* @bestmgmt 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F244 中修复了 translations.json 的路径问题\n* @BjornB2 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F245 中添加了荷兰语（nl）翻译\n* @deanxizian 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F248 中添加了中文（cn）支持\n* @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F234 中增加了对 Telegram 主题的支持\n* @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F264 中添加了越南语翻译\n* @ivanmilov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F268 中实现了将语音消息转换为文本并生成提示词的功能\n\n## 新贡献者\n* @jvican 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F237 中完成了首次贡献\n* @Am1nCmd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F239 中完成了首次贡献\n* @bestmgmt 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F244 中完成了首次贡献\n* @BjornB2 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F245 中完成了首次贡献\n* @deanxizian 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F248 中完成了首次贡献\n* @ivanmilov 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F268 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.4...0.2.5","2023-04-22T12:38:33",{"id":188,"version":189,"summary_zh":190,"released_at":191},180838,"0.2.4","## 变更内容\n* 增加预算周期，并由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F178 中进行改进\n* 增加 arm64 平台镜像，由 @slippersheepig 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F199 中完成\n* 修复当 stream=false 时的 token 计数问题，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F216 中完成\n* 多语言支持，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F214 中实现\n* 🇮🇹 添加意大利语翻译及少量翻译修正，由 @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F222 中完成\n* 土耳其语的少量修改，由 @muhammed540 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F226 中完成\n* 通过操作按钮和改进的缓存机制增强内联查询功能，由 @bugfloyd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F101 中实现\n* 内联查询：修复群聊中的重复消息，并添加多语言支持，由 @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F230 中完成\n* 土耳其语的少量修改，由 @muhammed540 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F231 中完成\n* 对俄语和德语翻译进行小幅改进，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F232 中完成\n* 应用 PEP8 代码风格并提升代码质量，由 @bugfloyd 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F233 中完成\n\n## 新贡献者\n* @muhammed540 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F226 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.3...0.2.4","2023-04-15T18:04:08",{"id":193,"version":194,"summary_zh":195,"released_at":196},180839,"0.2.3","## 变更内容\n* 添加了在私聊中禁用引用功能的选项，由 @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F177 中实现。\n* 在验证用户 ID 时忽略空值，由 @JokerQyou 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F186 中实现。\n* 修复了默认转录价格问题，由 @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F188 中修复。\n* 添加了 `chat` 命令，用于在群组中发起聊天，由 @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F189 中实现。\n* 修复了长提示下的内联查询问题。\n* 修复了 `\u002Fstats` 命令无法使用的问题。\n* 其他一些小的修复和改进。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.2...0.2.3","2023-04-08T09:17:17",{"id":198,"version":199,"summary_zh":200,"released_at":201},180840,"0.2.2","## 变更内容\n* @JokerQyou 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F121 中移除了消息文本中的所有机器人命令。\n* @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F126 中添加了对连续聊天指示器的初始支持。\n* @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F134 中将用户 ID 添加到所有日志中。\n* @VolunPotest 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F89 中新增了重新发送命令。\n* @AlexHTW 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F149 中修复了群组使用权限问题。\n* @n3d1117 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F154 中允许禁用图像生成和转录功能。\n* 以及许多其他小修复。\n\n## 新贡献者\n* @JokerQyou 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F121 中完成了首次贡献。\n* @VolunPotest 在 https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F89 中完成了首次贡献。\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.1...0.2.2","2023-04-01T13:54:15",{"id":203,"version":204,"summary_zh":205,"released_at":206},180841,"0.2.1","## What's Changed\r\n* Allow setting system content on reset by @gparrello in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F87\r\n* gpt-4 model support by @carlsverre in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F91\r\n* makes bot reply to quotes of its own messages in a group by @kamil-malinski in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F99\r\n* Initial stream support by @n3d1117 in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F110\r\n* Add balance functions to stats command by @AlexHTW and @deanxizian in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F103\r\n\r\n## New Contributors\r\n* @gparrello made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F87\r\n* @carlsverre made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F91\r\n* @kamil-malinski made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F99\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.2.0...0.2.1","2023-03-26T11:05:02",{"id":208,"version":209,"summary_zh":210,"released_at":211},180842,"0.2.0","## What's Changed\r\n* Adding the ability to ignore transcribing group chats by @dkvdm in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F69\r\n* Proper token counting using the tiktoken library by @n3d1117 in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F72\r\n* Handle responses longer than telegram message limit by @n3d1117 in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F76\r\n* Refactor: Replace Pipenv with requirements.txt for dependency management by @bugfloyd in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F79\r\n* Dockerfile improvements\r\n\r\n## New Contributors\r\n* @n3d1117 made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F72\r\n* @bugfloyd made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F79\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.8...0.1.9","2023-03-18T23:02:04",{"id":213,"version":214,"summary_zh":215,"released_at":216},180843,"0.1.8","## What's Changed\r\n* Modify transcribe request filter to catch more file formats by @k3it in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F61\r\n* fix filesystem permissions by chowning to appuser during Docker build COPY by @dkvdm in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F63\r\n* Bugfix: wrong stats counts when bot is running for multiple days by @AlexHTW in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F66\r\n* make OpenAI model configurable with env variables by @dkvdm in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F65\r\n* Added User budgets and guest budget by @AlexHTW in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F60\r\n\r\n## New Contributors\r\n* @dkvdm made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F63\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.7...0.1.8","2023-03-17T19:51:09",{"id":218,"version":219,"summary_zh":220,"released_at":221},180844,"0.1.7","## What's Changed\r\n* Track usage per user by @AlexHTW in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F49\r\n* Add group chat trigger keywords by @tracking in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F55\r\n* Optimize Dockerfile for minimal image size by @PeterDaveHello in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F57\r\n* Added `N_CHOICES`, `TEMPERATURE` and `IMAGE_SIZE` to the `.env` file\r\n\r\n## New Contributors\r\n* @AlexHTW made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F49\r\n* @tracking made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F55\r\n* @PeterDaveHello made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F57\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.6...0.1.7","2023-03-14T18:48:59",{"id":223,"version":224,"summary_zh":225,"released_at":226},180845,"0.1.6","## What's Changed\r\n* Move `ASSISTANT_PROMPT` and `MAX_TOKENS` to `.env` file\r\n* Added bot commands\r\n* Added a link to the \u002Fsetinline command by @whyevenquestion1t in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F48\r\n* Transcribe support for video messages and additional audio formats. by @k3it in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F50\r\n\r\n## New Contributors\r\n* @whyevenquestion1t made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F48\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.5...0.1.6","2023-03-11T10:07:31",{"id":228,"version":229,"summary_zh":230,"released_at":231},180846,"0.1.5","## What's Changed\r\n* Add support for group chats by @k3it in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F39\r\n* Add inline query mode for group chats (don't forget to enable inline query mode in BotFather via the `\u002Fsetinline` command)\r\n* Added option to reply to voice messages directly with the ChatGPT response of the transcript (`VOICE_REPLY_WITH_TRANSCRIPT_ONLY`)\r\n* Added option to specify max conversation age to avoid excessive token usage (`MAX_CONVERSATION_AGE_MINUTES`)\r\n\r\n## New Contributors\r\n* @k3it made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F39\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.4...0.1.5","2023-03-06T13:39:26",{"id":233,"version":234,"summary_zh":235,"released_at":236},180847,"0.1.4","* Added `ffmpeg` installation to `Dockerfile`\r\n* Automatic conversation summary generation to avoid excessive token usage\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.3...0.1.4","2023-03-05T20:31:14",{"id":238,"version":239,"summary_zh":240,"released_at":241},180848,"0.1.3","* Added ability to transcribe audio messages using Whisper\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.2...0.1.3","2023-03-04T17:29:25",{"id":243,"version":244,"summary_zh":245,"released_at":246},180849,"0.1.2","## What's Changed\r\n* Re-support proxy by @RogerRordo in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F33\r\n\r\n## New Contributors\r\n* @RogerRordo made their first contribution in https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fpull\u002F33\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1.1...0.1.2","2023-03-03T09:39:23",{"id":248,"version":249,"summary_zh":250,"released_at":251},180850,"0.1.1","* Image generation via the `\u002Fimage` command\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fn3d1117\u002Fchatgpt-telegram-bot\u002Fcompare\u002F0.1...0.1.1","2023-03-02T23:43:00"]