Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance 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:8080
DB_URL=mysql://root:root@localhost:3306/xxx # Optional
OPENAI=sk-xfeusx233fchwwe239430xxxxxxxxx # Mandatory. OpenAI API Key
OPENAI_ENDPOINT=http://localhost:5000 # Optional
SERP_DEV=183fjcs92fwewefhwiu382d8uwjcncsk # Mandatory. serper.dev's API KEY
ALLOW_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

Contributors

Languages

  • Go 49.7%
  • TypeScript 41.6%
  • CSS 4.5%
  • Shell 1.6%
  • Dockerfile 1.0%
  • HTML 0.9%
  • JavaScript 0.7%

AltStyle によって変換されたページ (->オリジナル) /