Skip to content

float32.app 是一个大语言模型驱动的搜索助手,它可以帮助你快速找到你想要的答案。依赖 RAG 技术,float32 可以获取互联网信息以提供更准确的答复。

License

Notifications You must be signed in to change notification settings

Limit-LAB/float32

Repository files navigation

float32.app:现代 AI 驱动的搜索助手

float32 是一个基于大语言模型驱动的搜索助手,它可以帮助你快速找到你想要的答案。依赖 RAG 技术,float32 可以获取互联网信息以提供更准确的答复。

Tip

尝试一下 float32.app。 如果你对 float32 的 prompt 感兴趣,可以看看 📁 ./prompt/*.promptc。 里面的 .promptc 文件记录了你感兴趣的东西。

flowchart LR start(Query) agent(Agent) vdb[(Vector DB e.g. Milvus)] othr(Other) pt(Prompt Engineer) llm(LLM, ChatGPT) subgraph Global RAG / 全局 RAG subgraph User Defined RAG / 用户定义 RAG vdb ---> agent othr ---> agent end subgraph float32 Managed RAG / float32 托管 RAG translate(Translation) google(Google Search) translate ---> google db(float32 Managed DB i.e. MySQL) mvdb(float32 Managed Vector DB e.g. pgvector) end end start ---> translate start ---> agent start ---> db start ..-> mvdb db ---> pt mvdb ..-> pt google ---> pt agent ---> pt pt ---> llm 
Loading

Acknowledged

Note

Limit-LAB logo This project is affiliated to Limit-LAB.
Special thanks to @ZincCat.

Server 端

float32.app 支持自托管,你可以在本地搭建一个 float32.app 服务。服务相关代码可以参考 backend/exec/svr/...

为了能运行,你需要

  • OpenAI API 服务
    必须。 包括 API Key 和 EndPoint(如适用)
  • Serper.dev 服务
    必须。 用于获取搜索引擎结果。包括一个 API Key。
  • MySQL 数据库
    可选。 用于历史服务,如没有 MySQL 数据库,则历史服务/分享服务不可用。

Tip

一键部署?试试看 deploy.sh

bash deploy.sh

.env 文件

.env 文件用于配置服务,你可以参考 backend/exec/svr/README.md 的描述与 backend/exec/svr/init.go 中的实现代码。

DEBUG=1# Optional. 1 or 0, 1 means debug mode on.LISTEN_ADDR=127.0.0.1:1145# Optional. default 0.0.0.0:8080DB_URL=mysql://root:root@localhost:3306/xxx# OptionalOPENAI=sk-xfeusx233fchwwe239430xxxxxxxxx# Mandatory. OpenAI API KeyOPENAI_ENDPOINT=http://localhost:5000# OptionalSERP_DEV=183fjcs92fwewefhwiu382d8uwjcncsk# Mandatory. serper.dev's API KEYALLOW_ORIGINS=https://float32.app# Optional, CORS, split by space

Prompt 与 PromptC 文件

float32.app 使用 promptc 标准来实践 prompt 开发的解耦。请参阅 promptc.devpromptc-go 获得更多信息。

所有 float32.app 使用的 prompt 都位于 prompt 目录下。它们包括:

目前所有的 prompt 是基于基础模板 base.promptc 使用 sedgenerate.sh 生成的。

Warning

如果你是 macOS,则需要安装 gsed 以运行 generate.sh

brew install gnu-sed

前端

前端使用 pnpm + React + Vite + MobX + TDesign 的结构。请使用以下命令以启动开发服务器:

cd frontend bash tdesign.sh # 获取 TDesign 资源 pnpm i pnpm dev

About

float32.app 是一个大语言模型驱动的搜索助手,它可以帮助你快速找到你想要的答案。依赖 RAG 技术,float32 可以获取互联网信息以提供更准确的答复。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go49.7%
  • TypeScript41.6%
  • CSS4.5%
  • Shell1.6%
  • Dockerfile1.0%
  • HTML0.9%
  • JavaScript0.7%