控制台聊天gpt v6
您与AI模型聊天的终极CLI伴侣
_享受无缝交互 开放人工智能, 米斯特拉莱, 人类, 扩展应用识别, 谷歌人工智能,或任何其他与OpenAI SDK兼容的LLM提供商(例如 深度求索, 阿里巴巴, 盗梦空间, 登月AI, OpenRouter等等)或 奥拉玛-直接从命令行托管模型。 高效轻松地提升您的聊天体验。_
______________________________________________________________________
目录
______________________________________________________________________
免责声明: 此代码的意图和实现与OpenAI、MistralAI、Anthropic、xAI、Google AI以及任何其他LLM实验室或相关方完全无关。与OpenAI、MistralAI、Anthropic、xAI、谷歌、任何其他LLM实验室或其子公司没有任何形式的隶属关系。
______________________________________________________________________
特性
- :new:通过Telegram机器人支持对话。如何创建一个: 从BotFather到“Hello World” 新
- :星: 通过响应API生成OpenAI图像.:星号:
- :星: OpenAI响应API 支持。:星:
- :star:运行任何兼容OpenAI SDK的模型-只需添加相关的模型结构
model_name和base_url到config.toml文件。:星: - :star:跑步 奥拉玛 本地托管模型。 _应安装Ollama,并已下载所选型号_ :星:
- :星: 拟人提示缓存 完全支持:星:
- :星: 模型上下文协议(MCP) 支持!如果您已经在使用MCP服务器,只需复制您的
claude_desktop_config.json转到根目录并重命名为mcp_config.json开始使用任何型号!:星: - 默认情况下禁用的所有支持型号的流媒体可以在中启用
settings菜单 - OpenAI助理测试版 支持
- AI管理模式 根据任务的复杂性,自动确定使用哪种模型。
- 配置文件:通过以下方式轻松自定义应用程序的设置
config.toml文件,以完全控制应用程序的工作方式。还通过应用程序支持settings命令。 - 角色选择用户可以定义AI在对话中的角色,从而获得更个性化和互动的体验。
- 温度控制:调整产生的反应的温度,以控制对话中的创造力和随机性。
- 命令处理:该应用程序响应用户输入的各种命令,以实现简单直观的交互。
- 图像输入:与选定的型号。
- 错误处理:清晰有用的错误消息,便于理解和解决任何问题。
- 对话历史:回顾之前的互动,保存对话以备将来参考,提供背景和连续性。
- 优雅退出:流畅地处理中断,确保在退出前保存对话,以避免进度损失。
- 一支优秀的团队:积极添加功能,开放想法并修复错误。
总体而言,这款应用程序侧重于提供用户友好和可定制的体验,具有增强个性化、控制和便利性的功能。
______________________________________________________________________
安装和使用
该脚本在Linux和MacOS终端上运行良好。对于Windows,建议使用 Windows 子系统 for Linux.
- 克隆存储库:
git clone https://github.com/amidabuddha/console-chat-gpt.git- 进入文件夹:
cd console-chat-gpt- 安装必要的依赖项:
python3 -m pip install -r requirements.txt- 这
config.toml.sample将自动复制到config.toml第一次运行时,提示输入API密钥/s。请随意更改中不可用的任何其他默认值settings根据您的需求,在应用内设置菜单。
- 运行可执行文件:
python3 main.py> 专业提示: > 为可执行文件创建一个别名,以便从任何地方运行。
- 使用
help在聊天中使用命令检查可用选项。
- 享受
______________________________________________________________________
中的可配置选项 config.toml
|\[chat.defaults\]|生成聊天完成/响应的主要属性。 | |-|-| |温度|使用什么样的采样温度,在0到2之间。较高的值(如0.8)将使输出更随机,而较低的值(例如0.2)将更集中。如果满足以下条件,则可以为每个新的聊天会话设置 adjust_temperature 在\[聊天功能\]中是 真. | |system_role |插入到模型上下文中的系统(或开发人员)消息。应该是\[聊天角色\]部分列出的角色之一。如果满足以下条件,则可以为每个新的聊天会话设置 role_selector 在\[聊天功能\]中是 真. | |model |用于生成聊天完成/响应的模型ID,如gpt-4o或o3。应在\[chat.models\]部分列出相关参数。如果满足以下条件,则可以为每个新的聊天会话设置 model_selector 在\[聊天功能\]中是 真. |
|\[chat.managed\]|专用于AI管理模式的设置。 *无法在聊天会话中编辑*. | |-|-| |assistant|将评估您的提示并从下面配置的四个模型中选择最佳可用模型来处理它的首选模型。应在\[chat.models\]部分列出相关参数。 | |assistant_role|评估模型的自定义指令。 *只有当你确切地知道自己在做什么时,才能改变这一点!* | |assistant_generalist |您首选的通用模型,通常是您在任何类型的查询中使用最多的模型。应在\[chat.models\]部分列出相关参数。 | |assistant_fast |当速度优于精度时。应在\[chat.models\]部分列出相关参数。 | |assistant_thinker |复杂任务的推理模型。应在\[chat.models\]部分列出相关参数。 | |assistant_coder |您处理编码和数学问题的首选模型。应在\[chat.models\]部分列出相关参数。 | |提示|何时 AI管理模式 如果经常使用,可以通过将其更改为禁用Y/N提示 错误的. |
|\[聊天功能\]|聊天应用程序的可配置选项。有些可以在聊天会话中通过以下方式访问 settings 命令| |-|-| |model_selector |\[聊天模型\]部分提供的模型选择列表 config.toml.何时 真 可以在每个新聊天会话开始时修改此列表。 | |adjust_temperature |提示更改每个聊天会话的温度。当 真 可以在每个新聊天会话开始时修改温度值。 | |role_selector |的\[聊天角色\]部分中可用的角色选择列表 config.toml.何时 真 可以在每个新聊天会话开始时修改此列表。| |save_chat_on_exit |何时 真 使用时自动保存聊天会话 exit 聊天中的命令。| |继续聊天|何时 真 提供以前保存的聊天会话列表,以便在新会话中继续。该列表可以在聊天会话中通过以下方式进行修改 chats 命令。| |~~调试~~ |应用程序日志记录-尚未实现。 | |disable_intro_help_message |中可用的所有聊天命令 help 在聊天初始化时打印。这是针对新用户的,可以通过设置来禁用 错误的. | |assistant_mode |启用 开放人工智能助手API 作为聊天初始化时的可用选择。 | |ai_managed |启用 AI管理模式 允许模型根据您的提示自动选择最佳模型。详细设置如下。 | |流媒体|如果设置为 真,模型响应数据将流式传输到客户端。 | |mcp_client|设置为 错误的 如果不需要,将阻止每次聊天的MCP服务器的默认初始化。 |
|\[聊天电报\]|启用电报用户界面进行通信。 | |-|-| |启用|如果设置为 真,启动Telegram机器人轮询循环,而不是终端聊天UI。 | |bot_token |来自BotFather的Telegram机器人令牌,格式为 :. | |allowed_chat_ids |允许使用机器人的聊天ID列表。留空以允许所有聊天。 | |admin_chat_ids |允许运行仅限管理员命令的聊天ID列表,例如 /shutdown. | |debug_context |如果 真,将Telegram会话/内存调试快照打印到终端日志中,以排除上下文问题。 | |max_countrent_updates |并行处理的最大电报更新数。默认值为 8 当省略时。不同的聊天同时运行,而每个聊天都保持严格的顺序和隔离。 |
每个模型块内还支持通过以下方式进行每种模型的Telegram房间映射:
telegram_chat_id =telegram_chat_ids = [, ]
当聊天室映射到模型时,该聊天室被固定到此模型(模型切换命令在那里被禁用),而所有其他命令(/mode, /role, /reasoning, /websearch, /webfetch等等)仍然可用。
添加OpenAI SDK支持的模型
在您的末尾添加一个条目 config.toml 文件。 使用以下示例结构:
[chat.models.{{model name that makes sense to you}}]
api_key = "YOUR_API_KEY"
base_url = {{the custom base URL, for example "https://api.deepseek.com/v1"}}
model_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)
model_max_tokens = 32000 (the suported context window of the selected model)
model_name = {{model name exactly as specified in the relevant API reference, for example "deepseek-reasoner"}}
model_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)
reasoning_effort = (the desired value if supported, such as "medium", otherwise false)______________________________________________________________________
示例
- 提示示例:
- Markdown可视化示例:
- 设置和帮助:
您可以在我们的 示例页面.
______________________________________________________________________
贡献
欢迎投稿!如果您发现任何错误、有功能请求或想做出改进,请打开问题或提交拉取请求。
