Skip to content

便捷的GPT联网搜索云函数,提供一键部署、自定义检索优化和格式化数据输出。An efficient GPT-based web search cloud function, offering one-click deployment, customizable search optimization, and formatted data output.

Notifications You must be signed in to change notification settings

abandon888/gptSearchWebFn

Repository files navigation

基于 ChatGPT API 的联网检索云函数

项目简介

本项目是一个高效的云函数,基于 ChatGPT API 构建,专为实现高级联网检索功能而设计。项目采用 JavaScript 编写,支持在阿里云的云函数平台上无缝部署,提供了一种简便且高效的方式来利用 OpenAI 的先进功能,包括函数调用和模型微调等。

主要特色包括:

  • 集成 OpenAI 官方模块:允许用户轻松实现 ChatGPT API 的高级功能,如函数调用和细粒度的模型微调,拓展了云函数的应用场景。
  • 一键部署:设计简洁,可通过几个简单步骤在阿里云函数计算控制台进行一键部署,无需复杂配置。
  • 定制化检索优化:用户可通过调整关键词和检索排序参数,精细控制检索结果,以满足特定需求。
  • 灵活的 Prompt 配置:提供灵活的 Prompt 配置选项,用户可便捷地自定义检索云函数的行为,适应不同的应用场景。
  • 简化 API 配置:项目内置无头浏览器进行联网检索,用户仅需配置 AI 相关的 API 参数即可,省去了寻找和接入搜索引擎 API 的繁琐过程。
  • 优化的 Prompt 设计:通过精心设计和调试的 Prompt,项目能够返回格式化的数据,极大地方便了前端数据的展示和处理。

该项目适合希望在云环境中实现强大且灵活的联网检索功能,特别是对于希望快速集成和利用 ChatGPT 强大能力的场景。

项目背景

由于业务要求,需要实现一个 gpt 联网搜索的功能,看了看号称最强 gpt 搜索插件的 WebPilot,太贵;又看了看 openai 官方实现的联网搜索,还行但是不开放接口,没办法,只能自己去做,于是就实现了这个项目。 具体项目架构等可查看我的知乎文章:如何快速实现一个gpt搜索功能

项目部署及运行

部署

  1. fork 本项目到自己的仓库
  2. git clone 项目到本地,并进入项目目录
  3. 确保本地有 nodejs 环境,安装依赖,并根据需要自行修改相关配置参数
npm install
  1. 进入阿里云函数计算控制台(函数计算 FC),选择创建函数,选择事件函数 alt text
  2. 上传全部项目文件,并创建函数 alt text
  3. 进入函数详情,可以看到函数的配置信息,点击触发器,添加触发器,选择 HTTP 触发器,即可调用测试 alt text

配置参数说明

data.json 文件中的配置参数说明如下:

  • OPENAI_API_KEY:gpt 搜索的 api key
  • OPENAI_API_URL:gpt 搜索时的代理 url
  • activitySummeryPrompt:type 为 activity 的 prompt(为调试便利未使用,使用 prompt.js 中的配置)
  • insightSummeryPrompt:type 为 insight 的 prompt
  • sortPrompt:对搜索引擎检索结果排序的 prompt
  • generalQueryPrompt:通用的搜索优化 prompt(未使用)
  • insightQueryPrompt:type 为 insight 时搜索优化 prompt
  • activityQueryPrompt:type 为 activity 时搜索优化 prompt
  • testUser:测试用户的信息数据(测试使用)

prompt.js 中的配置参数说明如下:

  • `activitySummery:type 为 activity 的 prompt

如果我的项目对你有帮助,欢迎 star,fork,也欢迎提 issue,pr,谢谢!

About

便捷的GPT联网搜索云函数,提供一键部署、自定义检索优化和格式化数据输出。An efficient GPT-based web search cloud function, offering one-click deployment, customizable search optimization, and formatted data output.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published