{"id":23933986,"url":"https://github.com/CookSleep/LLM_API_Price_Comparator_Web","last_synced_at":"2025-09-11T16:33:27.767Z","repository":{"id":249966936,"uuid":"833092375","full_name":"CookSleep/LLM_API_Price_Comparator_Web","owner":"CookSleep","description":"LLM API Price Comparator Web 是一个在线工具，帮助用户便捷地比较不同LLM API服务商在指定输入输出下调用同一种模型的价格。  它会自动获取美元/人民币汇率，允许用户输入服务商的余额、调用定价信息，并计算、比较相对于输入输出Token的成本。  该项目是原Windows桌面应用的网页版本，代码主要由Claude 3.5 Sonnet和GPT-4o编写，我提供了非常多的样式、功能设计提议和反馈。","archived":false,"fork":false,"pushed_at":"2025-09-06T01:59:42.000Z","size":1247,"stargazers_count":13,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-06T03:36:01.317Z","etag":null,"topics":["api","cost","exchange-rates","llm","online","price-comparison","token","tools"],"latest_commit_sha":null,"homepage":"https://cooksleep.github.io/LLM_API_Price_Comparator_Web/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CookSleep.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-24T10:38:04.000Z","updated_at":"2025-09-06T01:59:45.000Z","dependencies_parsed_at":"2024-09-06T08:37:44.370Z","dependency_job_id":"6965df41-fda8-4d90-895d-d608445ec082","html_url":"https://github.com/CookSleep/LLM_API_Price_Comparator_Web","commit_stats":null,"previous_names":["cooksleep/llm_api_price_comparator_web"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/CookSleep/LLM_API_Price_Comparator_Web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CookSleep%2FLLM_API_Price_Comparator_Web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CookSleep%2FLLM_API_Price_Comparator_Web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CookSleep%2FLLM_API_Price_Comparator_Web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CookSleep%2FLLM_API_Price_Comparator_Web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CookSleep","download_url":"https://codeload.github.com/CookSleep/LLM_API_Price_Comparator_Web/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CookSleep%2FLLM_API_Price_Comparator_Web/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274670538,"owners_count":25328256,"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","status":"online","status_checked_at":"2025-09-11T02:00:13.660Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["api","cost","exchange-rates","llm","online","price-comparison","token","tools"],"created_at":"2025-01-06T00:30:01.282Z","updated_at":"2025-09-11T16:33:27.728Z","avatar_url":"https://github.com/CookSleep.png","language":"JavaScript","funding_links":[],"categories":["Building"],"sub_categories":["Tools"],"readme":"\u003ch1 align=\"center\"\u003eLLM API Price Comparator Web\u003c/h1\u003e\r\n\r\n\u003cp align=\"center\"\u003e\r\n  \u003cimg src=\"LLM_API_Price_Comparator.png\" alt=\"LLM API Price Comparator Logo\" width=\"200\"/\u003e\r\n\u003c/p\u003e\r\n\r\nLLM API Price Comparator Web 是一个在线工具，帮助用户便捷地比较不同LLM API服务商在指定输入输出下调用同一种模型的价格。\r\n\r\n它会自动获取美元/人民币汇率，允许用户输入服务商的余额、调用定价信息，并计算、比较相对于输入输出Token的成本。\r\n\r\n该项目是原Windows桌面应用的网页版本，代码主要由Claude 3.5 Sonnet和GPT-4o编写，我提供了非常多的样式、功能设计提议和反馈。\r\n\r\n![使用示例](usage_example.png)\r\n\r\n## 功能特性\r\n\r\n- 自动获取美元/人民币汇率，方便比较国内外服务商。\r\n- 用户可输入服务商名称、充值金额、充值货币、到账余额、调用价格等详细信息。\r\n- 支持不同服务商的费用排名显示，按成本从低到高排序。\r\n- 提供直观的Web界面，方便添加、删除服务商信息。\r\n- 生成人民币、美元费用比较结果。\r\n- 响应式设计，支持桌面和移动设备。\r\n- 按住 Ctrl 或 ⌘ 键并使用方向键快速在表单间移动。\r\n- 支持保存当前表单并在浏览器中查看和填充历史记录。\r\n\r\n## 如何使用\r\n\r\n1. 访问 [LLM API Price Comparator Web](https://cooksleep.github.io/LLM_API_Price_Comparator_Web/)。\r\n2. 在页面上输入Token数(输入和输出)。\r\n3. 填写每个服务商的相关信息。\r\n4. 点击\"计算成本\"按钮以获取不同服务商的成本比较。\r\n5. 查看费用排名，选择合适的服务商。\r\n6. 如有需要，点击\"保存表单\"为当前填写的数据命名并存储。\r\n7. 点击\"历史记录\"可选择过往表单并快速填充。\r\n\r\n\r\n## 自行部署指南（如果你想自己再部署一个，而不是用我部署好的）\r\n\r\n本项目使用 GitHub Actions 自动更新汇率数据，并通过 GitHub Pages 部署静态网站。以下是如何 Fork 本仓库并配置 GitHub Actions 和 GitHub Pages 的步骤。\r\n\r\n### 1. Fork 仓库\r\n\r\n1. 访问 [LLM API Price Comparator Web](https://github.com/CookSleep/LLM_API_Price_Comparator_Web) 仓库页面。\r\n2. 点击页面右上角的 \"Fork\" 按钮，将该仓库 Fork 到你的 GitHub 账户中。\r\n\r\n### 2. 配置 GitHub Actions\r\n\r\n1. 在你的 GitHub 仓库中创建 `.github/workflows` 目录\r\n2. 在该目录中创建 `update_exchange_rate.yml` 文件，内容如下：\r\n\r\n```yaml\r\nname: Update Exchange Rate\r\n\r\non:\r\n  schedule:\r\n    - cron: '30 1 * * *' # 每天UTC时间01:30，相当于北京时间09:30\r\n  workflow_dispatch: # 手动触发\r\n\r\npermissions:\r\n  contents: write\r\n\r\nenv:\r\n  FORCE_JAVASCRIPT_ACTIONS_TO_NODE20: true # 强制使用 Node20\r\n\r\njobs:\r\n  update-exchange-rate:\r\n    runs-on: ubuntu-latest\r\n\r\n    steps:\r\n      - name: Checkout repository\r\n        uses: actions/checkout@v3 # 使用 v3\r\n\r\n      - name: Install dependencies\r\n        run: |\r\n          python -m pip install requests\r\n\r\n      - name: Fetch exchange rate from Alpha Vantage\r\n        env:\r\n          ALPHA_VANTAGE_API_KEY: ${{ secrets.ALPHA_VANTAGE_API_KEY }}\r\n        run: |\r\n          python update_exchange_rate.py\r\n\r\n      - name: Commit and push changes\r\n        env:\r\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\r\n        run: |\r\n          git config --local user.email \"action@github.com\"\r\n          git config --local user.name \"GitHub Action\"\r\n          git add exchange_rate.json\r\n          git diff-index --quiet HEAD || git commit -m \"Update exchange rate\"\r\n          git push origin HEAD:main\r\n```\r\n\r\n### 3. 创建 Python 脚本\r\n\r\n在仓库根目录创建 `update_exchange_rate.py` 文件，内容如下：\r\n\r\n```python\r\nimport os\r\nimport requests\r\nimport json\r\n\r\ndef fetch_exchange_rate(api_key):\r\n    url = f'https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE\u0026from_currency=USD\u0026to_currency=CNY\u0026apikey={api_key}'\r\n    response = requests.get(url)\r\n    data = response.json()\r\n    if 'Realtime Currency Exchange Rate' in data:\r\n        return {\r\n            \"exchangeRate\": data['Realtime Currency Exchange Rate']['5. Exchange Rate'],\r\n            \"lastRefreshed\": data['Realtime Currency Exchange Rate']['6. Last Refreshed']\r\n        }\r\n    else:\r\n        raise Exception(\"Error fetching exchange rate\")\r\n\r\ndef main():\r\n    api_key = os.getenv('ALPHA_VANTAGE_API_KEY')\r\n    if not api_key:\r\n        raise Exception(\"No API key found in environment variables\")\r\n    \r\n    exchange_rate = fetch_exchange_rate(api_key)\r\n    with open('exchange_rate.json', 'w') as f:\r\n        json.dump(exchange_rate, f, indent=4)\r\n\r\nif __name__ == '__main__':\r\n    main()\r\n```\r\n\r\n### 4. 配置 Secrets\r\n\r\n为了确保你的 API 密钥和 GitHub Token 安全地存储和使用，你需要在 GitHub 仓库设置中配置 Secrets。\r\n\r\n1. 在 [Alpha Vantage](https://www.alphavantage.co/) 获取 Alpha Vantage API 密钥。\r\n2. 导航到你的 GitHub 仓库。\r\n3. 点击 \"Settings\"。\r\n4. 在左侧菜单中选择 \"Secrets and variables\" \u003e \"Actions\"。\r\n5. 点击 \"New repository secret\"。\r\n6. **Name**: `ALPHA_VANTAGE_API_KEY`\r\n7. **Value**: 你的 Alpha Vantage API 密钥。\r\n8. 点击 \"Add secret\" 保存。\r\n\r\n### 5. 配置仓库设置\r\n\r\n确保配置仓库的 GitHub Actions 设置，以允许使用外部 Actions 并设置适当的权限：\r\n\r\n1. 在仓库的 \"Settings\" 页面，选择 \"Actions\" \u003e \"General\"。\r\n2. 在 \"Actions permissions\" 部分：\r\n   - 选择 \"Allow all actions and reusable workflows\"。\r\n   - 勾选 \"Allow actions created by GitHub\"。\r\n3. 在 \"Workflow permissions\" 部分：\r\n   - 选择 \"Read and write permissions\"。\r\n   - 勾选 \"Allow GitHub Actions to create and approve pull requests\"。\r\n4. 点击 \"Save\" 保存更改。\r\n\r\n### 6. 创建 GitHub Pages\r\n\r\n1. 导航到你的 GitHub 仓库。\r\n2. 点击 \"Settings\"。\r\n3. 在左侧菜单中选择 \"Pages\"。\r\n4. 在 \"Build and deployment\" 部分：\r\n   - **Source**: 选择 `Deploy from a branch`。\r\n   - **Branch**: 选择 `main` 分支，并确保目录是 `/root`。\r\n5. 点击 \"Save\"。\r\n\r\n完成这些步骤后，GitHub Pages 将从你的 `main` 分支部署，你可以通过 `https://\u003cyour-username\u003e.github.io/LLM_API_Price_Comparator_Web` 访问你的静态网站。\r\n\r\n### 手动触发汇率更新（初次部署后如果没到汇率更新时间时可能需要）\r\n\r\n1. 导航到你的 GitHub 仓库页面。\r\n2. 点击 \"Actions\" 选项卡。\r\n3. 在左侧找到 \"Update Exchange Rate\" 工作流。\r\n4. 点击 \"Run workflow\" 按钮，然后点击 \"Run workflow\" 确认。\r\n\r\n完成以上步骤后，GitHub Actions 将自动或根据需要手动更新汇率数据，并将更新后的数据提交到你的仓库中，同时通过 GitHub Pages 部署静态网站。\r\n\r\n## 贡献\r\n\r\n欢迎对项目进行贡献！如果您有任何建议或想要添加新功能，请随时创建一个Issue或Pull Request。\r\n\r\n## 许可证\r\n\r\n本项目采用 [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html) 许可证，详情请见 [LICENSE](LICENSE) 文件。\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCookSleep%2FLLM_API_Price_Comparator_Web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCookSleep%2FLLM_API_Price_Comparator_Web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCookSleep%2FLLM_API_Price_Comparator_Web/lists"}