{"id":15383170,"url":"https://github.com/wangrunlin/cloudflare-ai-web","last_synced_at":"2025-08-01T12:06:17.654Z","repository":{"id":236298815,"uuid":"792331337","full_name":"wangrunlin/cloudflare-ai-web","owner":"wangrunlin","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-26T12:58:48.000Z","size":130,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T08:30:38.221Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://cloudflare-ai-web-ochre-alpha.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wangrunlin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-26T12:58:43.000Z","updated_at":"2024-04-26T13:04:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"3e647e82-6cbb-4cdb-9719-5fe21d52b043","html_url":"https://github.com/wangrunlin/cloudflare-ai-web","commit_stats":{"total_commits":1,"total_committers":1,"mean_commits":1.0,"dds":0.0,"last_synced_commit":"b0ea31c6a8062f4102d69cd124d8a209d20c3e22"},"previous_names":["wangrunlin/cloudflare-ai-web"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wangrunlin%2Fcloudflare-ai-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wangrunlin%2Fcloudflare-ai-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wangrunlin%2Fcloudflare-ai-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wangrunlin%2Fcloudflare-ai-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wangrunlin","download_url":"https://codeload.github.com/wangrunlin/cloudflare-ai-web/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247070927,"owners_count":20878586,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T14:35:39.010Z","updated_at":"2025-04-03T20:17:52.065Z","avatar_url":"https://github.com/wangrunlin.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cloudflare-ai-web\n\n## AI 启动！\n\n### 一键部署（推荐）\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FJazee6%2Fcloudflare-ai-web\u0026env=CF_TOKEN,CF_GATEWAY\u0026envDescription=%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E4%BF%A1%E6%81%AF%E8%AF%B7%E6%9F%A5%E7%9C%8B\u0026envLink=https%3A%2F%2Fgithub.com%2FJazee6%2Fcloudflare-ai-web)\n\n示例：https://ai.jaze.top\n\n### Deno Deploy\n\nhttps://dash.deno.com\n\n- Fork 本仓库\n- Build Step改为`NITRO_PRESET=deno-deploy npm run build_node`\n- Deploy Project\n- 设置环境变量\n\n### Docker\n\n```bash\ndocker run -d --name cloudflare-ai-web \\\n  -e CF_TOKEN=YOUR_CF_TOKEN \\\n  -e CF_GATEWAY=YOUR_CF_GATEWAY \\\n  -p 3000:3000 \\\n  --restart=always \\\n  jazee6/cloudflare-ai-web\n```\n\n## 特性\n\n- 利用 Cloudflare Workers AI 快速搭建多模态AI平台\n- 支持 Serverless 部署，无需服务器\n- 支持开启访问密码，聊天记录本地存储\n- 轻量化(~638 kB gzip)\n- 支持`ChatGPT` `Gemini Pro`\n\n### 模型支持\n\nhttps://developers.cloudflare.com/workers-ai/models/\n\n你可以在`./utils/db.ts`中增删模型\n\n## 部署说明\n\n### 环境变量列表\n\n| 名称             | 描述                                 | \n|----------------|------------------------------------|\n| CF_TOKEN       | Cloudflare Workers AI Token        |  \n| CF_GATEWAY     | Cloudflare AI Gateway URL          |    \n| OPENAI_API_KEY | OpenAI API Key (需要ChatGPT时填写)      |     \n| G_API_KEY      | Google AI API Key (需要GeminiPro时填写) |   \n| G_API_URL      | Google AI 反代 (非美国ip填写，或参考以下配置)     |    \n| PASSWORD       | 访问密码 (可选)                          |   \n\n#### CF_TOKEN\n\nhttps://dash.cloudflare.com/profile/api-tokens\n\n- 单击创建令牌\n- 使用Workers AI (Beta)模板\n- 单击继续以显示摘要\n- 单击创建令牌\n- 复制您的令牌，设置环境变量\n\n#### CF_GATEWAY\n\nhttps://dash.cloudflare.com/\n\n- Cloudflare 侧栏 AI - AI Gateway\n- 添加新 AI Gateway\n- 填写名称和URL slug创建\n- 单击右上角API Endpoints\n- 复制您的Universal Endpoint，设置环境变量\n\n#### G_API_KEY\n\nhttps://ai.google.dev/tutorials/rest_quickstart#set_up_your_api_key\n\n#### G_API_URL\n\n参考 https://github.com/Jazee6/gemini-proxy 搭建反代\n\n或者在`nuxt.config.ts`中添加以下配置\n\n```\nnitro: {\n    vercel: {\n        regions: [\"cle1\", \"iad1\", \"pdx1\", \"sfo1\", \"sin1\", \"syd1\", \"hnd1\", \"kix1\"]\n    }\n}\n```\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=Jazee6/cloudflare-ai-web\u0026type=Date)](https://star-history.com/#Jazee6/cloudflare-ai-web\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwangrunlin%2Fcloudflare-ai-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwangrunlin%2Fcloudflare-ai-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwangrunlin%2Fcloudflare-ai-web/lists"}