news 2026/5/17 5:43:41

AI赋能终端:基于LLM的命令行助手dotai设计与实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI赋能终端:基于LLM的命令行助手dotai设计与实现

1. 项目概述:当AI遇上你的终端

如果你是一个重度命令行用户,每天在终端里敲击着lscdgit commit这些命令,那么你肯定有过这样的时刻:面对一个复杂的任务,你隐约记得有个命令能搞定,但死活想不起具体的语法和参数;或者,你看着一段陌生的错误输出,需要花上十几分钟去搜索引擎里大海捞针,只为找到一个能解决问题的单行命令。这种上下文切换和搜索成本,是效率的隐形杀手。

dotai这个项目,就是为了终结这种痛苦而生的。它的核心思想非常直接:将大型语言模型(LLM)的能力无缝集成到你的 Shell 环境中。简单来说,它不是一个独立的聊天机器人应用,而是一个 Shell 插件或命令行工具,让你能在终端里直接“召唤”AI,用自然语言描述你的需求,然后由 AI 生成并执行相应的命令。想象一下,你只需要在终端里输入ai “如何找出当前目录下所有昨天修改过的 .log 文件并压缩它们?”,下一秒,一个完整的、可执行的findtar命令组合就出现在你面前,并且询问你是否要执行它。这就是dotai带来的工作流革命。

这个项目适合所有与命令行打交道的开发者、系统管理员、DevOps 工程师乃至数据科学家。无论你是想快速查询一个生僻的awk命令用法,还是想自动化一个复杂的多步骤文件处理流程,dotai都能将你的自然语言意图,瞬间转化为精准的 Shell 指令,极大地降低了使用命令行的记忆负担和入门门槛。它不是一个替代你学习 Shell 的工具,而是一个强大的“副驾驶”,在你需要时提供即时、准确的支持。

2. 核心设计思路与架构拆解

dotai的设计哲学是“最小侵入,最大效用”。它不希望改变用户固有的 Shell 使用习惯,而是作为一个轻量级的助手嵌入其中。其核心架构可以分解为几个关键部分:用户接口层、AI 代理层、上下文管理器和安全执行沙箱。

2.1 用户接口层:无缝融入现有工作流

一个成功的工具必须让用户感觉不到它的存在,直到需要它的时候。dotai通常以两种形式提供接口:

  1. Shell 函数/别名:最常见的方式。在你的 Shell 配置文件(如~/.bashrc~/.zshrc)中定义一个函数,例如ai()。当你输入ai “你的问题”时,这个函数就会被调用。这种方式零开销,启动速度最快,与 Shell 环境完美融合。
  2. 独立命令行工具:作为一个独立的二进制文件安装,通过dotaidai命令调用。这种方式更便于通过包管理器(如brewapt)进行安装和管理,适合更复杂的配置和插件生态。

无论哪种形式,其交互模式都遵循一个清晰的循环:用户输入自然语言 -> AI 生成命令 -> 用户确认/编辑 -> 执行(可选)。这个循环是体验的核心,必须在响应速度和结果准确性之间取得平衡。

2.2 AI 代理层:模型的选择与提示工程

这是dotai的大脑。它需要完成从自然语言到 Shell 命令的“翻译”工作。这里有几个关键决策点:

模型选择:项目通常会支持多种后端 LLM,例如 OpenAI 的 GPT 系列、Anthropic 的 Claude,或者本地部署的 Llama、Mistral 等开源模型。选择云端模型(如 GPT-4)通常能获得最准确、最符合逻辑的命令生成能力,但会产生 API 调用费用和网络延迟。选择本地模型则完全离线、隐私无忧,但对硬件有要求,且生成质量可能稍逊一筹。一个成熟的dotai实现会允许用户灵活配置。

提示词工程:这是决定生成命令质量的生命线。一个优秀的提示词(Prompt)需要清晰地告诉 AI:

  • 角色:“你是一个资深的 Unix/Linux 系统专家,精通 Bash/Zsh 命令行。”
  • 任务:“根据用户的自然语言描述,生成安全、高效、正确的 Shell 命令。只输出命令本身,除非用户要求解释。”
  • 约束
    • 优先使用最通用、最标准的命令和语法。
    • 避免使用破坏性命令(如rm -rf /),除非描述中明确包含“强制删除所有”等极端词汇。
    • 对于涉及查找、处理文件的操作,优先考虑使用find而非ls管道,因为find更健壮。
    • 在命令中,对于文件名、路径等可能变化的参数,使用明确的占位符(如FILENAME),并给出注释。
  • 上下文:可以提供当前工作目录、Shell 类型、操作系统等作为上下文,帮助 AI 生成更精确的命令(例如,在 macOS 上生成brew命令,在 Ubuntu 上生成apt命令)。

一个精心设计的提示词,能将命令生成的准确率从 70% 提升到 95% 以上。

2.3 上下文管理器:让 AI 拥有“记忆”

单纯的单次问答是不够的。一个强大的dotai应该能理解对话的上下文。例如:

用户:ai “查找当前目录下所有的 .py 文件” AI 生成:find . -name “*.py” -type f 用户:ai “只显示前10个”

在第二次查询时,AI 应该能理解“前10个”指的是上一次find命令的结果,从而生成find . -name “*.py” -type f | head -n 10。这就需要上下文管理器来维护一个短暂的会话历史,并将历史信息作为后续请求的上下文喂给 AI。实现时需要注意 token 长度的限制,通常只保留最近几轮对话。

2.4 安全沙箱与执行控制:至关重要的安全阀

这是dotai设计中最需要谨慎对待的部分。允许 AI 生成的命令被直接执行,存在巨大风险。因此,一个负责任的dotai实现必须包含严格的安全措施:

  1. 永远默认询问:生成的任何命令,都必须先显示给用户,并明确询问“是否执行?(Y/n)”。绝不能默认自动执行。
  2. 危险命令过滤:在将命令交给 AI 生成前或生成后,可以有一个基础的危险命令模式匹配过滤器,例如匹配rm -rf /dd if=/dev/random:(){ :|:& };:(Fork 炸弹)等。一旦匹配,可以直接拒绝生成或高亮警告。
  3. 解释模式:提供一个--explain-e标志,让 AI 在生成命令的同时,分步解释这个命令每一部分的作用。这不仅是很好的学习方式,也是用户在按下回车键前的一次重要安全检查。
  4. 只生成,不执行:提供一个--dry-run标志,只生成命令并显示,绝不执行。这对于编写脚本或学习阶段非常有用。

注意:安全最终依赖于用户。AI 可能被“诱导”生成具有破坏性的命令,或者用户自己可能描述了一个危险的操作。因此,dotai应该被视作一个强大的建议生成器,而非一个自动执行代理。用户必须对最终执行的命令负责。

3. 从零开始实现一个简易版 dotai

理解了核心设计后,我们可以动手实现一个功能精简但核心流程完整的简易版dotai。我们将使用 Python 和 OpenAI API 来实现。

3.1 环境准备与依赖安装

首先,确保你的系统有 Python 3.8+ 环境。我们创建一个独立的项目目录并设置虚拟环境,这是一个好习惯,可以隔离依赖。

mkdir my-dotai && cd my-dotai python3 -m venv venv source venv/bin/activate # Linux/macOS # 对于 Windows: venv\Scripts\activate

接下来,安装核心依赖。我们需要openai库来调用 API,python-dotenv来管理敏感的环境变量(如 API 密钥)。

pip install openai python-dotenv

然后,你需要获取一个 OpenAI API 密钥。访问 OpenAI 平台,注册并创建一个新的 API Key。切记不要将密钥直接硬编码在代码中!

在项目根目录创建一个.env文件来存储密钥:

# .env 文件内容 OPENAI_API_KEY=你的_真实_api_密钥_放在这里

同时,创建一个.gitignore文件,确保.env和虚拟环境目录不会被提交到版本控制系统:

# .gitignore venv/ .env *.pyc __pycache__/

3.2 核心 AI 客户端与提示词设计

现在,我们创建主脚本文件dotai.py。首先,实现一个与 OpenAI 通信的客户端。

# dotai.py import os import sys from openai import OpenAI from dotenv import load_dotenv # 加载 .env 文件中的环境变量 load_dotenv() class DotAIClient: def __init__(self, model: str = “gpt-3.5-turbo”): self.client = OpenAI(api_key=os.getenv(“OPENAI_API_KEY”)) if not self.client.api_key: raise ValueError(“OPENAI_API_KEY 未设置。请在 .env 文件中配置。”) self.model = model # 系统提示词,定义了 AI 的角色和行为准则 self.system_prompt = “””你是一个资深的 Unix/Linux 系统专家,精通 Bash 和 Zsh Shell。 你的任务是根据用户的自然语言描述,生成安全、正确、高效的 Shell 命令。 请遵守以下规则: 1. 只输出最终的命令本身,除非用户明确要求解释。 2. 使用最通用、最标准的命令语法。 3. 避免任何破坏性操作,除非用户描述中明确包含了“强制”、“删除所有”等极端词汇。 4. 对于文件路径等变量,使用明确的占位符如 <文件名> 或 <路径>。 5. 如果用户的描述模糊或不完整,基于常识做出最合理的假设,并生成对应的命令。 当前 Shell 环境:Bash。当前操作系统:Linux。””” def generate_command(self, user_query: str) -> str: “””向 OpenAI API 发送请求,生成命令。””” try: response = self.client.chat.completions.create( model=self.model, messages=[ {“role”: “system”, “content”: self.system_prompt}, {“role”: “user”, “content”: user_query} ], temperature=0.1, # 低温度使输出更确定、更稳定 max_tokens=150 ) # 提取并清理返回的命令文本 command = response.choices[0].message.content.strip() # 去除可能存在的代码块标记 if command.startswith(“`”) and command.endswith(“`”): command = command[1:-1] if command.startswith(“bash\n”): command = command[5:] return command except Exception as e: return f“错误:无法生成命令。原因:{e}”

关键点解析

  • system_prompt:这是质量的核心。我们清晰地定义了 AI 的角色、任务和约束。明确的约束能显著减少生成危险或无意义命令的概率。
  • temperature=0.1:这个参数控制输出的随机性。设为较低值(如 0.1 或 0.2)可以使 AI 对于相同的输入,生成更一致、更可靠的命令,这对于工具类应用至关重要。
  • 返回结果清理:AI 有时会返回被反引号包裹的命令或带“bash”前缀的代码块。我们需要将其剥离,得到纯净的命令字符串。

3.3 构建交互式命令行界面

有了 AI 客户端,我们需要构建一个用户交互的循环。我们将实现两个主要模式:单次查询和交互式对话模式。

# 在 dotai.py 中继续添加 import readline # 用于提供命令行历史记录和编辑功能,提升体验 class DotAIInterface: def __init__(self, client: DotAIClient): self.client = client self.conversation_history = [] # 简单的上下文历史 def single_query(self, query: str): “””处理单次查询,生成并显示命令。””” print(f“\n[你的问题]: {query}”) command = self.client.generate_command(query) print(f“[生成的命令]:\n{command}”) self._prompt_for_action(command) def interactive_session(self): “””启动一个交互式会话,保留上下文。””” print(“进入 dotai 交互模式。输入 ‘quit’ 或 ‘exit’ 退出。输入 ‘clear’ 清空上下文。”) while True: try: user_input = input(“\ndotai> “).strip() if user_input.lower() in [‘quit’, ‘exit’, ‘q’]: break if user_input.lower() == ‘clear’: self.conversation_history = [] print(“上下文已清空。”) continue if not user_input: continue # 将历史记录作为上下文的一部分(简单实现,仅上一轮) context = “” if self.conversation_history: context = f“之前的对话:{self.conversation_history[-1]}\n” full_query = context + f“新请求:{user_input}” command = self.client.generate_command(full_query) print(f“\n[命令]: {command}”) self._prompt_for_action(command) # 保存本轮对话到历史(简易版,只保存最后一轮) self.conversation_history = [f“用户:{user_input},AI:{command}”] except KeyboardInterrupt: print(“\n退出。”) break except EOFError: break def _prompt_for_action(self, command: str): “””询问用户对生成的命令执行什么操作。””” if command.startswith(“错误:”): return print(“\n下一步操作?”) print(“ [E] 执行此命令”) print(“ [C] 复制到剪贴板”) print(“ [N] 新建查询”) print(“ [Q] 退出”) choice = input(“选择 (E/c/n/q): “).strip().lower() if choice == ‘e’: self._execute_command(command) elif choice == ‘c’: self._copy_to_clipboard(command) elif choice == ‘q’: sys.exit(0) # 其他情况(包括 ‘c‘, ’n‘, 回车)则继续 def _execute_command(self, command: str): “””在子进程中执行命令。””” # **重要安全警告**:在实际工具中,这里应有更严格的安全检查! confirm = input(f“确定要执行 ‘{command}’ 吗?(y/N): “).strip().lower() if confirm == ‘y’: print(f“执行: {command}”) os.system(command) else: print(“执行已取消。”) def _copy_to_clipboard(self, command: str): “””尝试将命令复制到系统剪贴板。””” try: import subprocess # 跨平台复制命令(macOS: pbcopy, Linux: xclip/xsel, Windows: clip) if sys.platform == ‘darwin’: subprocess.run([‘pbcopy’], input=command.encode(), check=True) print(“命令已复制到剪贴板 (macOS).”) elif sys.platform == ‘linux’: # 尝试 xclip, 然后 xsel try: subprocess.run([‘xclip’, ‘-selection’, ‘clipboard’], input=command.encode(), check=True) print(“命令已复制到剪贴板 (Linux xclip).”) except (subprocess.CalledProcessError, FileNotFoundError): try: subprocess.run([‘xsel’, ‘—clipboard’, ‘—input’], input=command.encode(), check=True) print(“命令已复制到剪贴板 (Linux xsel).”) except: print(“无法复制:请安装 xclip 或 xsel。”) elif sys.platform == ‘win32’: subprocess.run([‘clip’], input=command.encode(), check=True, shell=True) print(“命令已复制到剪贴板 (Windows).”) else: print(“无法识别的系统,跳过复制。”) except Exception as e: print(f“复制到剪贴板失败: {e}”) # 主程序入口 if __name__ == “__main__”: import argparse parser = argparse.ArgumentParser(description=‘简易版 dotai - 你的终端 AI 助手’) parser.add_argument(‘query’, nargs=‘?’, help=‘直接传入的自然语言查询’) parser.add_argument(‘-i’, ‘—interactive’, action=‘store_true’, help=‘进入交互式模式’) args = parser.parse_args() client = DotAIClient() interface = DotAIInterface(client) if args.interactive: interface.interactive_session() elif args.query: interface.single_query(args.query) else: # 如果没有参数,也进入交互模式 interface.interactive_session()

3.4 集成到 Shell 环境

为了让使用体验像原生命令一样,我们创建一个 Shell 包装脚本。创建一个名为dotai的可执行文件(无后缀)。

#!/bin/bash # 文件: dotai (放在你的 PATH 路径下,例如 ~/.local/bin/) # 确保此文件有执行权限: chmod +x ~/.local/bin/dotai # 激活 Python 虚拟环境并运行脚本 /path/to/your/my-dotai/venv/bin/python /path/to/your/my-dotai/dotai.py “$@”

然后,你可以在终端中直接使用:

dotai “如何统计当前目录下所有 .txt 文件的行数?”

或者进入交互模式:

dotai -i

更进一步的集成,是在你的~/.bashrc~/.zshrc中设置一个简短的别名或函数,实现类似原版dotaiai命令:

# 在 ~/.zshrc 中添加 ai() { /path/to/your/my-dotai/venv/bin/python /path/to/your/my-dotai/dotai.py “$*” }

之后,source ~/.zshrc,就可以用ai “你的问题”来调用你的助手了。

4. 高级功能探索与优化方向

我们实现的简易版已经具备了核心功能。一个生产级的dotai项目还会包含更多高级特性,以下是几个关键的优化方向。

4.1 上下文感知的增强

简易版只保留了上一轮对话,这是不够的。一个增强的上下文管理器应该:

  • 维护多轮对话:将最近 N 轮(例如 5 轮)的完整对话历史(用户查询和 AI 回复)作为上下文发送给 AI。需要注意 API 的 Token 限制,历史太长时需要截断或总结。
  • 集成系统信息:自动将当前工作目录 (pwd)、Git 仓库状态(如果有)、操作系统、Shell 类型等信息作为上下文的一部分插入到系统提示词或用户查询中。这能让 AI 生成更精确的命令(例如,在 Git 仓库中,“查看更改”应该生成git status而不是ls)。
  • 文件内容感知(实验性):对于非常复杂的任务,可以允许 AI 请求“阅读”当前目录下特定文件的内容(例如Makefiledocker-compose.yml),以便生成与之相关的命令。这需要极其谨慎的权限控制和用户确认。

4.2 安全机制的强化

安全是重中之重,需要多层防御:

  1. 命令分类与风险评级:在将命令交给用户确认前,可以先用一个简单的规则引擎或另一个轻量级 AI 模型对命令进行风险评级。例如,将命令分为“信息查询”(ls,cat)、“文件操作”(cp,mv)、“系统修改”(sudo apt install,chmod)和“高危操作”(rm -rf,dd,mkfs)。对于后两类,需要更醒目的警告和额外的确认步骤。
  2. 沙箱环境预览:对于复杂的管道命令或脚本,可以提供“沙箱预览”模式。即在一个临时目录或容器内模拟执行命令的前几步(例如,只执行find部分,不执行后面的-delete),并将结果预览给用户看,确认无误后再执行真实操作。
  3. 用户自定义黑名单/白名单:允许用户在配置文件中定义绝对禁止执行的命令模式(黑名单),或只允许在特定目录下执行的命令(白名单)。

4.3 性能与成本的平衡

频繁调用云端 AI API 会产生费用和延迟。优化策略包括:

  • 本地模型集成:提供使用本地 LLM(如通过 Ollama、LM Studio 运行的模型)的选项。虽然生成速度可能慢于本地调用,但消除了网络延迟和费用。这对于处理简单的、模式化的命令请求(如“列出文件”、“查找文本”)非常有效。
  • 命令缓存:建立一个本地缓存,将常见的“自然语言查询”和对应的“生成命令”缓存起来。当用户再次输入相同或高度相似的查询时,优先从缓存中返回结果,无需调用 AI。这可以大幅减少 API 调用次数。
  • 流式输出:对于较长的命令解释或对话,使用 API 的流式响应,让用户能更快地看到部分结果,提升体验。

4.4 插件化与可扩展性

一个优秀的工具应该易于扩展。可以设计一个插件系统,允许用户或社区贡献:

  • 专用领域插件:例如dotai-git插件,优化所有 Git 相关的命令生成;dotai-docker插件,专门处理 Docker 容器和镜像操作。
  • 输出格式化插件:AI 生成的命令输出可能很冗长。插件可以解析特定命令的输出并美化(例如,将docker ps的输出格式化为更漂亮的表格)。
  • 自定义工具集成:允许用户将自己编写的脚本或内部工具注册到dotai,然后通过自然语言调用。例如,输入“部署到测试环境”,AI 可以调用你预先定义好的部署脚本。

5. 实战避坑与经验分享

在实际使用和开发这类工具的过程中,我积累了一些宝贵的经验和需要避开的“坑”。

5.1 提示词设计的“魔鬼在细节”

最初,我的提示词很简单:“请根据我的描述生成 Linux 命令。”结果 AI 经常在回复中加入大量的解释性文字,如“首先,我们可以使用ls命令来…”,我需要手动从大段文本中剥离命令。后来我明确加上“只输出命令本身”,问题立刻解决。

另一个坑是关于“安全性”的表述。我曾写“不要生成危险的命令”,但 AI 对“危险”的理解可能与人类不同。后来我改为更具体的约束:“避免使用rm -rfddchmod 777 /等具有广泛破坏性的命令,除非用户的描述中明确包含了‘强制删除所有’、‘格式化’等极端词汇。” 并且,在提示词中强调“对于删除操作,默认使用rm -i(交互式)或先使用ls列出目标。” 这样的具体指令效果要好得多。

心得:写提示词就像给一个极其聪明但死板的新手下达指令。必须具体、无歧义、带例子。多花半小时打磨提示词,能节省日后无数调试和纠错的时间。

5.2 处理 AI 的“幻觉”与错误

AI 会“幻觉”,即生成看似合理但完全错误的命令。例如,用户问“把文件发送到远程服务器”,AI 可能生成一个语法错误的scp命令,或者错误地使用了rsync的参数。

应对策略

  1. 后置校验:对于某些特定类型的命令,可以在生成后运行一个简单的语法检查器。例如,对于bash命令,可以用bash -n “生成的命令”来检查语法(注意:这不能检查逻辑错误)。
  2. 提供解释模式:如前所述,--explain模式让 AI 分步解释命令。用户在阅读解释的过程中,往往能自己发现逻辑问题。这比直接执行一个可能错误的命令安全得多。
  3. 设置较低的temperature:如前所述,较低的temperature(如 0.1)能减少随机性,使输出更可靠。对于命令生成这种追求准确性的任务,低temperature是首选。
  4. 用户教育:在工具的介绍和提示中,明确告知用户“AI 可能出错,请务必检查生成的命令,尤其是涉及数据删除和系统修改的操作”。

5.3 网络与 API 的稳定性处理

依赖云端 API 意味着要处理网络超时、速率限制和 API 故障。

实现要点

  • 超时与重试:在客户端代码中为 API 调用设置合理的超时(如 30 秒),并实现简单的指数退避重试机制(例如,失败后等待 1秒、2秒、4秒再重试,最多3次)。
  • 优雅降级:当无法连接到 AI 服务时,可以降级到本地缓存查找,或者提供一个本地的、基于规则匹配的简单命令库作为后备方案。
  • 费用监控:如果你使用按 token 收费的 API,在客户端添加一个简单的 token 计数和费用估算功能是很有帮助的,可以避免意外的高额账单。

5.4 隐私与数据安全的考量

你的查询内容会被发送到 AI 服务提供商。虽然主流提供商都有严格的数据政策,但如果你处理的是敏感信息(如内部服务器路径、机密文件名、含有敏感数据的命令),这就构成了隐私风险。

建议

  • 对于高度敏感的环境,优先考虑部署本地开源模型。虽然效果可能稍差,但数据完全不出本地。
  • 在提示词中声明:可以在系统提示词开头加入“请注意,以下对话内容可能包含非敏感的工作信息,用于生成命令行指令。”这虽然不改变技术事实,但是一种良好的实践。
  • 提供“无日志”模式:如果可能,选择支持无日志记录的 AI API 服务(部分提供商提供此类企业级选项)。
  • 用户知情权:在工具的文档和初次使用时,明确告知用户数据将发送至何处,以及可能存在的隐私影响。

开发这样一个工具,最大的成就感来自于看到它实实在在地提升了日常工作的效率。从一个模糊的想法到一行精准命令的转化,这种流畅感一旦体验过就回不去了。不过,始终要记住,它是一个强大的“建议引擎”,而非“自动执行器”。保持批判性思维,理解它生成的每一行命令,是安全且高效使用这类 AI 辅助工具的不二法门。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/17 5:43:18

从零构建高效项目脚手架:CLI工具核心原理与工程实践

1. 项目概述&#xff1a;一个为独立开发者量身打造的脚手架工具如果你是一名独立开发者&#xff0c;或者在一个小型技术团队里负责前端或全栈项目&#xff0c;那么你一定对项目初始化这件事深有体会。每次开始一个新项目&#xff0c;无论是个人博客、管理后台还是一个简单的工具…

作者头像 李华
网站建设 2026/5/17 5:32:15

ElevenLabs儿童语音合成技术白皮书(2024教育级部署标准首次公开)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs儿童语音合成技术白皮书&#xff08;2024教育级部署标准首次公开&#xff09; ElevenLabs 于2024年正式发布面向K–12教育场景的儿童语音合成专项技术规范&#xff0c;首次定义“教育级儿童语…

作者头像 李华
网站建设 2026/5/17 5:30:44

JUCE框架移植mda-vst插件:经典DSP算法与现代音频开发的桥梁

1. 项目概述&#xff1a;JUCE框架下的MDA插件遗产如果你在音频插件开发领域摸爬滚打过一段时间&#xff0c;尤其是对开源的、有历史感的DSP代码感兴趣&#xff0c;那么“hollance/mda-plugins-juce”这个项目仓库的名字&#xff0c;很可能让你心头一动。这不仅仅是一个简单的代…

作者头像 李华
网站建设 2026/5/17 5:25:01

Claude_on_Claude:用AI自动化优化提示词,降低大模型应用开发成本

1. 项目概述与核心价值最近在AI开发圈里&#xff0c;一个名为“Gsunny45/Claude_on_Claude”的项目悄然走红。乍一看这个标题&#xff0c;你可能会有点懵&#xff1a;Claude on Claude&#xff1f;这是什么套娃操作&#xff1f;简单来说&#xff0c;这是一个利用Anthropic公司强…

作者头像 李华