news 2026/5/13 13:50:40

基于Lepton AI构建对话式搜索引擎:500行代码实现智能问答

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于Lepton AI构建对话式搜索引擎:500行代码实现智能问答

1. 项目概述:用Lepton AI打造你自己的对话式搜索引擎

最近在折腾AI应用开发,发现很多朋友都想做一个能“对话”的搜索引擎。想象一下,你问它“帮我找找最近有什么好用的开源向量数据库”,它不仅能返回一堆链接,还能理解你的意图,把搜索结果整理成一段通顺的总结,甚至能和你继续聊下去。这听起来很酷,但实现起来是不是感觉要写几千行代码,还得搞定复杂的后端部署?其实不然。今天要聊的这个项目Search with Lepton,它用不到500行代码,就帮你搭起了一个功能完整的对话式搜索引擎。我自己上手跑了一遍,发现它巧妙地利用了Lepton AI平台的能力,把大语言模型(LLM)、搜索引擎API和前端界面这些复杂的东西打包成了一个开箱即用的方案。无论你是想快速验证一个产品想法,还是想学习如何将LLM与搜索结合,这个项目都是一个绝佳的起点。接下来,我就带你从零开始,拆解它的设计思路、手把手完成部署,并分享我在实操中踩过的坑和总结的技巧。

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

2.1 为什么是“对话式”搜索?

传统的搜索引擎返回的是十条蓝色的链接和摘要片段。用户需要自己点开多个网页,阅读、对比、归纳,才能得到答案。这个过程效率低下。而“对话式”搜索的核心目标,是让AI代理来完成“阅读、归纳、总结”这一步。它的工作流程通常是:用户输入一个自然语言问题 -> 系统调用搜索引擎API获取原始结果 -> 将原始网页内容或摘要喂给大语言模型(LLM)-> LLM生成一个结构清晰、语言自然的答案。这不仅仅是把搜索结果堆在一起,而是要求LLM理解问题意图,从多源信息中提取关键点,去重、排序,最终组织成一段有用的回复。Search with Lepton正是实现了这个核心流程。

2.2 技术选型:Lepton AI 作为粘合剂

这个项目最巧妙的地方在于其技术选型。它没有让我们自己去搭建一个复杂的后端服务来协调LLM和搜索API,而是深度依赖了Lepton AI平台。你可以把Lepton AI理解为一个云原生的AI应用部署和管理平台。它提供了两大核心能力,正好被这个项目用上了:

  1. 内置的LLM服务:项目通过leptonaiSDK,可以几乎零配置地调用Lepton平台托管的高质量LLM(比如GPT-4、Claude等)。这意味着你不需要自己申请OpenAI的API Key、处理复杂的计费和速率限制,Lepton帮你搞定了这一切。在代码里,它可能就体现为一行client = leptonai.Client()的调用。
  2. 内置的KV存储:对话式搜索有一个常见需求:缓存。如果两个用户问了同样的问题,每次都去重新搜索并调用LLM生成答案,既浪费钱又慢。因此,需要对问题和答案进行缓存。Lepton AI提供了内置的Key-Value存储服务,项目用它来缓存搜索结果和生成的答案,极大地提升了响应速度和降低了成本。

这种设计让开发者只需关注业务逻辑(即如何组合搜索和LLM),而无需操心基础设施(模型部署、缓存数据库、网络服务)。这是它能用不到500行代码实现的核心原因。

2.3 前端与后端分离的清晰架构

从项目结构看,它采用了经典的前后端分离架构:

  • 前端(web/目录):一个用现代前端框架(如React或Vue)构建的交互界面。它负责展示搜索框、聊天历史、流式输出的答案,并与后端API通信。项目已经写好了构建脚本(npm run build),我们只需要执行即可生成静态文件。
  • 后端(search_with_lepton.py:一个Python Web服务(很可能基于FastAPI或Flask)。它定义了接收用户查询的API端点。当收到查询时,它执行以下操作:
    1. 检查KV缓存中是否有该问题的答案,有则直接返回。
    2. 若无缓存,则根据配置(BACKEND环境变量)调用对应的搜索引擎API(Bing或Google)。
    3. 将搜索引擎返回的原始结果(标题、链接、摘要)整理成一段提示词(Prompt)。
    4. 调用Lepton平台的LLM服务,将提示词送入,请求生成总结性答案。
    5. 将LLM生成的答案存入KV缓存,然后返回给前端。

这种架构职责清晰,便于独立开发和扩展。例如,你可以轻易地替换前端UI,或者在后端增加对更多搜索引擎(如DuckDuckGo)的支持。

3. 环境准备与核心配置详解

3.1 搜索引擎API密钥获取

项目支持多种搜索引擎后端,这是实现搜索能力的基石。你需要根据选择,申请对应的API Key。

Bing Web Search API这是微软提供的商业搜索接口,结果质量高,稳定性好。

  1. 访问 Microsoft Azure Portal ,如果你没有账户,需要注册。
  2. 在Azure中,创建一个新的“资源”。在搜索框里输入“Bing Search v7”,选择它并创建。
  3. 创建过程中,你需要选择订阅(Subscription)、资源组(Resource Group)和区域。对于个人试用,选择免费层(F1)即可,它每月提供一定额度的免费调用。
  4. 创建成功后,进入该资源,在“密钥和终结点”页面,你会看到两个Key。复制其中一个。

    注意:请妥善保管此密钥,不要将其直接提交到Git等公开仓库。我们后续会将其设置为环境变量。

Google Custom Search JSON API (Programmable Search Engine)这是Google官方提供的可编程搜索接口,适合需要精准控制搜索范围的场景。

  1. 访问 Google Cloud Console 。
  2. 创建一个新项目或选择现有项目。
  3. 在侧边栏找到“API和服务” -> “库”。搜索“Custom Search API”并启用它。
  4. 接着,你需要创建凭据(API Key)。在“API和服务” -> “凭据”页面,点击“创建凭据” -> “API密钥”。复制生成的密钥。
  5. 仅有关键词还不够,你还需要一个“搜索引擎ID”(CX)。访问 Programmable Search Engine控制台 。
  6. 点击“新增”,配置你的搜索引擎。你可以选择“搜索整个网络”,也可以限定在某些特定网站。创建完成后,在“控制面板” -> “基本信息”里找到“搜索引擎ID”,复制它。

    提示:Google Custom Search API虽然有免费额度,但额度较少。对于高频使用,建议关注其定价。

第三方聚合服务(SearchApi / Serper)如果你觉得直接申请Bing或Google的API流程繁琐,或者需要更高的调用额度,可以考虑这些第三方服务。它们封装了多个搜索引擎的API,提供统一的接口,通常有更友好的免费套餐。

  • SearchApi.io:注册后即可在仪表板获取API Key。
  • Serper.dev:同样,注册后获取API Key。 这些服务的优点是开箱即用,但需要注意其服务条款和稳定性。

3.2 Lepton AI 工作空间配置

这是项目的核心依赖,用于提供LLM和KV服务。

  1. 安装与登录:按照提示,在命令行执行pip install -U leptonai openai && lep login。这行命令做了两件事:安装/升级leptonaiopenai的Python SDK;然后通过lep login命令引导你进行认证。
  2. 获取工作空间令牌:登录命令通常会打开浏览器,引导你完成OAuth授权。授权成功后,你需要在 Lepton AI Dashboard 的Settings->Tokens页面,复制你的LEPTON_WORKSPACE_TOKEN。这个令牌是你在代码中访问Lepton云服务的凭证。

    实操心得:lep login有时可能因为网络问题失败。如果遇到问题,可以尝试直接复制令牌,然后在终端手动设置环境变量export LEPTON_WORKSPACE_TOKEN=your_token_here,后续的lep photon run命令也能识别。

3.3 前端构建环境准备

项目的前端部分需要Node.js环境来构建。

  1. 安装Node.js:如果你没有安装,请前往 Node.js官网 下载并安装LTS版本。安装完成后,在终端运行node -vnpm -v检查是否安装成功。
  2. 安装依赖:进入项目的web目录,运行npm install。这个命令会根据package.json文件,下载所有必要的前端依赖包(如React, Vite, Tailwind CSS等)。

    常见问题:npm install可能因为网络问题失败。可以尝试配置淘宝镜像:npm config set registry https://registry.npmmirror.com,然后再执行安装。如果遇到node-sass等原生模块编译错误,可能需要全局安装windows-build-tools(Windows)或Xcode Command Line Tools(macOS)。

4. 完整构建与本地运行实操

4.1 环境变量配置与项目构建

所有敏感信息都通过环境变量传递,这是安全且标准的做法。我们以使用Bing SearchLepton LLM为例,展示完整流程。

  1. 克隆项目:首先,将项目代码拉到本地。

    git clone https://github.com/leptonai/search_with_lepton.git cd search_with_lepton
  2. 设置环境变量:打开你的终端(Linux/macOS用bash/zsh,Windows用PowerShell或CMD)。

    • 设置Bing API密钥:
      # Linux/macOS export BING_SEARCH_V7_SUBSCRIPTION_KEY="你的Bing密钥" # Windows PowerShell $env:BING_SEARCH_V7_SUBSCRIPTION_KEY="你的Bing密钥" # Windows CMD set BING_SEARCH_V7_SUBSCRIPTION_KEY=你的Bing密钥
    • 设置Lepton工作空间令牌:
      export LEPTON_WORKSPACE_TOKEN="你的Lepton令牌" # Windows PowerShell $env:LEPTON_WORKSPACE_TOKEN="你的Lepton令牌"
  3. 构建前端静态资源:进入web目录并构建。构建过程会将React代码等编译、优化,生成静态文件(通常在distbuild目录)。

    cd web npm install # 如果之前没安装过依赖 npm run build

    构建成功后,你会看到输出目录(比如dist)里生成了index.html和一堆静态资源文件。此时可以回到项目根目录:cd ..

  4. 启动后端服务:在项目根目录,指定后端为Bing,并启动Python服务。

    BACKEND=BING python search_with_lepton.py

    如果一切顺利,终端会输出服务启动的信息,通常监听在http://127.0.0.1:8000或类似地址。

  5. 访问应用:打开浏览器,访问http://127.0.0.1:8000。你应该能看到一个简洁的搜索界面。尝试输入一个问题,比如“Explain quantum computing in simple terms”,稍等片刻,就能看到搜索引擎返回的原始结果,以及LLM生成的总结性答案。

4.2 切换不同搜索引擎后端

如果你想使用Google搜索,需要在启动服务前设置对应的环境变量和BACKEND参数。

  • 使用 SearchApi.io:

    export SEARCHAPI_API_KEY="你的SearchApi密钥" BACKEND=SEARCHAPI python search_with_lepton.py
  • 使用 Serper.dev:

    export SERPER_SEARCH_API_KEY="你的Serper密钥" BACKEND=SERPER python search_with_lepton.py
  • 使用 Google Programmable Search Engine:

    export GOOGLE_SEARCH_API_KEY="你的Google API密钥" export GOOGLE_SEARCH_CX="你的搜索引擎ID" BACKEND=GOOGLE python search_with_lepton.py

注意事项:每次切换后端,最好重启一下Python服务,确保环境变量生效。另外,不同搜索引擎返回的数据格式略有差异,项目代码中已经做了适配,但结果的风格和质量会有所不同。Bing的结果通常更偏重商业和新闻,Google的覆盖面可能更广。

4.3 核心代码流程解析

虽然项目宣称不到500行,但其核心逻辑非常清晰。我们简要看一下search_with_lepton.py中大概的流程(伪代码):

# 1. 初始化Lepton客户端和KV存储 client = leptonai.Client() kv = leptonai.KV() # 2. 定义搜索函数 (以Bing为例) def search_bing(query): headers = {"Ocp-Apim-Subscription-Key": api_key} params = {"q": query, "count": 10} # 获取10条结果 response = requests.get(BING_ENDPOINT, headers=headers, params=params) # 解析返回的JSON,提取标题、链接、摘要(snippet) return parsed_results # 3. 定义LLM总结函数 def summarize_with_llm(query, search_results): # 将搜索结果的标题和摘要拼接成一段文本,作为LLM的上下文 context = "\n".join([f"{r['title']}: {r['snippet']}" for r in search_results]) # 构建Prompt,指示LLM基于上下文回答问题 prompt = f"""基于以下搜索结果,请用中文回答这个问题:{query}\n\n搜索结果:\n{context}\n\n答案:""" # 调用Lepton托管的LLM completion = client.completions.create(model="gpt-4", prompt=prompt, max_tokens=500) return completion.choices[0].text # 4. Web服务主逻辑 @app.post("/search") def handle_search(user_query: str): # 检查缓存 cached_answer = kv.get(user_query) if cached_answer: return {"answer": cached_answer, "cached": True} # 执行搜索 if BACKEND == "BING": raw_results = search_bing(user_query) # ... 其他搜索引擎分支 # LLM总结 final_answer = summarize_with_llm(user_query, raw_results) # 写入缓存 kv.put(user_query, final_answer) # 返回结果(包括原始结果和总结) return {"answer": final_answer, "raw_results": raw_results, "cached": False}

可以看到,整个流程就是“接收查询 -> 查缓存 -> 搜索 -> LLM总结 -> 存缓存 -> 返回”这样一个清晰的管道。KV缓存的存在避免了重复计算,是生产级应用的必要考虑。

5. 部署到Lepton AI云平台

本地运行没问题后,你很可能希望将它部署到公网,分享给其他人使用。Lepton AI提供了极其简便的一键部署能力。

5.1 一键部署(推荐)

项目仓库的README中通常有一个“Deploy with Lepton AI”的按钮。点击这个按钮,它会引导你跳转到Lepton AI的Dashboard,并预填好部署这个光子(Photon,Lepton对可部署单元的称呼)所需的配置。你只需要:

  1. 确认部署的名称(如search-with-lepton)。
  2. 在环境变量部分,填入你之前申请的BING_SEARCH_V7_SUBSCRIPTION_KEYLEPTON_WORKSPACE_TOKEN
  3. 选择你想要的硬件资源(对于轻量级应用,小型CPU实例通常足够)。
  4. 点击部署。

几分钟后,你的应用就会有一个专属的URL(如https://search-with-lepton-[你的用户名].lepton.run),任何人都可以通过这个链接访问你的对话式搜索引擎。

5.2 使用命令行部署

如果你希望对部署有更精细的控制,或者修改了代码想部署自己的版本,可以使用lep photon run命令。

lep photon run -n my-search-app -m search_with_lepton.py \ --env BACKEND=BING \ --env BING_SEARCH_V7_SUBSCRIPTION_KEY=你的Bing密钥 \ --env LEPTON_WORKSPACE_TOKEN=你的Lepton令牌

命令解释:

  • -n my-search-app:给你的部署实例起个名字。
  • -m search_with_lepton.py:指定入口文件。
  • --env:设置运行所需的环境变量。

执行命令后,CLI会打包你的代码和依赖,上传到Lepton平台并启动。部署完成后,同样会给出访问链接。

实操心得:在部署前,务必确保requirements.txt文件(如果有)或代码中列明了所有依赖(如requests,openai等)。Lepton的打包系统会自动安装它们。如果部署失败,查看部署日志是排查问题的第一步,通常能发现缺失依赖或环境变量错误。

6. 高级定制与优化方向

基础功能跑通后,你可以根据自己的需求对这个项目进行深度定制。

6.1 自定义提示词工程

项目的核心效果很大程度上取决于它发给LLM的提示词(Prompt)。默认的提示词可能比较简单。你可以修改summarize_with_llm函数中的prompt模板,来改变LLM的行为。

例如,你可以要求LLM:

  • 以特定格式输出:“请用分点列表的形式回答。”
  • 注重信息的时效性:“请优先参考2023年以后的搜索结果。”
  • 进行批判性思考:“在总结后,请指出这些搜索结果中可能存在的矛盾或未涵盖的方面。”
  • 限制回答长度:“答案请控制在200字以内。”

优化提示词是提升应用效果性价比最高的方式。你可以多尝试不同的表述,观察输出结果的变化。

6.2 集成其他搜索引擎或数据源

项目架构支持轻松扩展新的搜索后端。

  1. 在代码中仿照search_bing函数,编写一个新的搜索函数,如search_duckduckgo
  2. 在Web请求处理逻辑中,增加一个新的BACKEND分支(如BACKEND=DUCKDUCKGO)。
  3. 修改前端设置(如果需要),让用户可以选择这个新的搜索引擎。

更进一步,你不仅可以接入网页搜索,还可以接入:

  • 学术搜索引擎:如Google Scholar、Semantic Scholar,构建学术问答助手。
  • 内部知识库:结合向量数据库(如Milvus, Pinecone),先进行向量相似性检索,再将相关文档片段送给LLM总结,实现基于私有文档的智能问答。
  • 实时数据API:如天气、股票、航班信息API,让助手能回答事实性极强的实时问题。

6.3 前端界面个性化

前端代码在web/目录下,通常由src/中的组件构成。你可以:

  • 修改样式:通过CSS或Tailwind CSS类,改变颜色、字体、布局,使其符合你的品牌风格。
  • 增加功能
    • 对话历史持久化:将聊天记录保存在浏览器LocalStorage中。
    • 答案反馈按钮:增加“有帮助/没帮助”的按钮,收集用户反馈,用于后续优化。
    • 流式输出:修改后端和前端代码,让LLM的答案像ChatGPT一样一个字一个字地流式输出,提升用户体验。
    • 多轮对话:修改后端逻辑,将历史对话上下文也送入LLM,使其能进行连贯的多轮对话,而不仅仅是单次问答。

6.4 性能与成本优化

当用户量增大时,需要考虑优化。

  1. 缓存策略优化:默认的KV缓存是永久缓存。你可以引入缓存过期机制(TTL),例如只缓存24小时内的热门查询,以平衡新鲜度和性能。
  2. LLM模型选择:Lepton平台可能提供不同规模和价格的模型(如GPT-3.5-Turbo比GPT-4便宜且快)。对于简单查询,可以尝试使用更小、更快的模型,并在代码中根据查询复杂度动态选择模型。
  3. 结果分页与截断:对于复杂的查询,搜索引擎可能返回大量结果。全部送给LLM会消耗大量Token。可以只选取相关性最高的前5条结果进行总结,或者先让LLM筛选一遍结果。
  4. 异步处理:对于耗时的操作(如网络搜索、LLM生成),可以使用异步框架(如FastAPI的async/await),避免阻塞请求,提高服务器的并发处理能力。

7. 常见问题与故障排查实录

在实际搭建和运行过程中,你可能会遇到以下问题。这里记录了我踩过的坑和解决方法。

7.1 环境变量未生效

  • 症状:启动服务时提示“API Key not found”或类似错误。
  • 排查
    1. 检查你是否在正确的终端窗口设置了环境变量。新开的终端窗口需要重新设置。
    2. 在Python代码中尝试print(os.environ.get('BING_SEARCH_V7_SUBSCRIPTION_KEY'))看看是否能打印出来。
    3. 对于Windows用户,注意在PowerShell和CMD中设置环境变量的语法不同,且设置后可能需要重启终端或IDE。
  • 解决:最稳妥的方式是使用.env文件。在项目根目录创建.env文件,内容如下:
    BING_SEARCH_V7_SUBSCRIPTION_KEY=你的密钥 LEPTON_WORKSPACE_TOKEN=你的令牌 BACKEND=BING
    然后在Python代码开头使用python-dotenv库加载:from dotenv import load_dotenv; load_dotenv()。记得将.env添加到.gitignore中,避免密钥泄露。

7.2 前端构建失败

  • 症状:运行npm run build时出现各种错误,如Module not found,SyntaxError
  • 排查
    1. 确保Node.js版本符合要求(查看package.json中的engines字段)。
    2. 删除node_modules文件夹和package-lock.json文件,然后重新运行npm install
    3. 检查网络,如果是国内环境,配置npm镜像源。
  • 解决
    # 清除缓存并重装 rm -rf node_modules package-lock.json npm cache clean --force npm config set registry https://registry.npmmirror.com npm install npm run build

7.3 Lepton AI 认证或调用失败

  • 症状:服务启动后,搜索时后端报错,提示Lepton认证失败或LLM调用失败。
  • 排查
    1. 确认LEPTON_WORKSPACE_TOKEN是否正确,且未过期。可以到Lepton Dashboard的Tokens页面查看。
    2. 确认你的Lepton工作空间是否有配额,是否绑定了有效的支付方式(如果使用付费模型)。
    3. 在代码中增加错误处理,打印出Lepton API返回的具体错误信息。
  • 解决
    • 重新生成一个Token并更新环境变量。
    • 登录Lepton Dashboard,检查工作空间的额度和账单状态。
    • 尝试在代码中显式指定一个已知可用的模型,例如client.completions.create(model="gpt-3.5-turbo-instruct", ...)

7.4 搜索返回结果为空或质量差

  • 症状:LLM生成的答案很空洞,或者直接说“根据搜索结果未找到相关信息”。
  • 排查
    1. 首先,绕过LLM,直接打印出搜索引擎API返回的原始数据raw_results。看看是否真的有数据,数据格式是否正确。
    2. 检查你的搜索引擎API是否配置正确,特别是Google Custom Search的CX(搜索引擎ID)是否正确,它决定了搜索的范围。
    3. 尝试用简单的英文关键词在代码中直接测试搜索函数。
  • 解决
    • 如果原始结果为空,检查API密钥的权限和额度。去对应的云平台控制台查看调用日志和错误信息。
    • 如果原始结果有数据但质量差,考虑优化搜索查询。可以在将用户问题发送给搜索引擎前,先用一个简单的LLM调用(或规则)对问题进行关键词提取或重写,使其更符合搜索引擎的语法。
    • 尝试更换搜索引擎后端。不同引擎在不同类型查询上表现有差异。

7.5 部署后无法访问或报错

  • 症状:一键部署或命令行部署成功,但访问给出的URL显示错误(如502 Bad Gateway)。
  • 排查
    1. 在Lepton AI Dashboard上找到你的部署实例,查看其日志(Logs)。这是最重要的排查手段。
    2. 日志中通常会明确指示错误原因:可能是环境变量缺失、依赖安装失败、代码语法错误、端口绑定冲突等。
  • 解决
    • 依赖问题:确保项目根目录有正确的requirements.txtpyproject.toml文件。
    • 入口点错误:确认lep photon run命令中-m参数指定的文件路径和入口函数正确。对于这个项目,入口文件就是search_with_lepton.py,Lepton会自动识别其中的Web应用。
    • 资源不足:如果日志显示内存不足(OOM),尝试在部署时选择配置更高的实例规格。

这个项目就像一个精心设计的乐高套装,提供了搭建对话式搜索引擎所需的所有核心模块。通过它,你不仅能快速获得一个可用的工具,更能透彻理解这类应用背后的技术栈和工作原理。从环境配置、本地调试到云端部署,整个流程走一遍,你对AI应用开发的认知会具体很多。我自己的体会是,最大的收获不在于运行了这个Demo,而在于通过修改它的代码、定制提示词、接入新数据源的过程,真正掌握了将想法快速实现为可交互AI产品的能力。如果你在复现过程中遇到了上面没提到的问题,最好的办法就是仔细阅读错误日志,并善用搜索引擎——毕竟,你现在正在构建的,就是一个更好的搜索引擎。

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

通过Taotoken用量看板清晰掌握各模型消耗情况

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过Taotoken用量看板清晰掌握各模型消耗情况 对于依赖大模型API进行开发的团队或个人而言,成本控制与资源优化是持续性…

作者头像 李华
网站建设 2026/5/13 13:50:11

工程师为何痴迷末日题材?从系统重构视角解读末日幻想

1. 从工程师的视角看末日幻想:为何我们痴迷于“重启”的故事?作为一名在半导体和可编程逻辑领域摸爬滚打了十几年的工程师,我的日常是面对冰冷的硅片、复杂的硬件描述语言和永无止境的调试。但每当项目间隙,或是深夜调试代码感到疲…

作者头像 李华
网站建设 2026/5/13 13:49:30

Beyond Compare 5 密钥生成技术深度解析与完整激活方案

Beyond Compare 5 密钥生成技术深度解析与完整激活方案 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen Beyond Compare 5作为专业的文件对比工具,其授权机制采用复杂的RSA加密算法&a…

作者头像 李华
网站建设 2026/5/13 13:47:04

使用Taotoken CLI工具一键配置开发环境与多工具密钥的教程

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 使用Taotoken CLI工具一键配置开发环境与多工具密钥的教程 在接入多个大模型服务时,开发者通常需要为不同的工具和客户…

作者头像 李华