<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel>
<title><![CDATA[UiUi API docs]]></title> 
<atom:link href="https://api.jieagi.com/rss.php" rel="self" type="application/rss+xml" />
<description><![CDATA[界智通旗下uiuiapi聚合AI API文档]]></description>
<link>https://api.jieagi.com/</link>
<language>zh-cn</language>
<generator>emlog</generator>

<item>
    <title>VS-Code/通用配置</title>
    <link>https://api.jieagi.com/post/47</link>
    <description><![CDATA[<h1>🔧 Visual Studio Code (VSCode) 通用配置（1 分钟极速版）</h1>
<p>适用于 VSCode、Cursor、Trae 等所有主流编辑器，只需 1 分钟即可完成 uiuiAPI 编程环境的无缝接入。</p>
<blockquote>
<p>⚠️ <strong>重要提醒：</strong> Cursor 目前已限制了第三方 API 的直接使用！请按照以下教程，通过安装插件的方式完美绕过限制，继续享受丝滑的 AI 辅助编程。</p>
</blockquote>
<h2>步骤 1：安装插件</h2>
<ol>
<li>打开您的编辑器（VSCode、Cursor 或 Trae 操作同理）。</li>
<li>进入左侧的 <strong>扩展商店</strong>（快捷键 <code>Ctrl+Shift+X</code>）。</li>
<li>搜索并安装以下任意一款官方插件：
<ul>
<li><code>Claude Code</code></li>
<li><code>Codex – OpenAI</code></li>
</ul></li>
</ol>
<h2>步骤 2：手动修改 JSON 配置</h2>
<p>如果您不想使用脚本，或者系统环境受限，也可以手动在编辑器里填入 API（以兼容 OpenAI 格式的通用插件为例）：</p>
<ol>
<li>打开编辑器的底层设置 JSON 文件：<br />
按下 <code>Ctrl+Shift+P</code> → 输入并选择 <code>Preferences: Open Settings (JSON)</code>。</li>
<li>填入 uiuiAPI 的接口地址和验证方式，例如：</li>
</ol>
<pre><code class="language-json">{
  "chatgpt.apiBase": "https://sg.uiuiapi.com/v1",
  "chatgpt.config": {
    "preferred_auth_method": "uiuiapi-apikey"
  }
}
</code></pre>
<hr />
<p>💡 <strong>操作提示：</strong></p>
<ul>
<li>您的专属 API 密钥请前往 [uiuiAPI 控制台]<code>https://uiuiapi.com</code> 创建（生成令牌时，请务必选择对应工具的专用分组）。</li>
</ul>]]></description>
    <pubDate>Sat, 14 Mar 2026 20:49:38 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/47</guid>
</item>
<item>
    <title>Gemini CLI 安装配置</title>
    <link>https://api.jieagi.com/post/46</link>
    <description><![CDATA[<h1>💎 Gemini CLI 安装与 uiuiAPI 配置指南</h1>
<p>Gemini CLI 是 Google 的官方命令行工具，可让您在终端中直接与强大的 Gemini 模型交互。通过以下步骤，您可以将其快速接入 <strong>uiuiAPI 聚合平台</strong>，享受极致的 AI 响应速度。</p>
<h2>步骤 1：安装 Node.js</h2>
<p>💡 <strong>提示:</strong> 运行 Gemini CLI 依赖 Node.js 环境。如果您之前已经安装过（例如在配置 Claude Code 或 CodeX 时已安装），请直接跳过此步骤。未安装的用户请前往 Node.js 官网下载安装。</p>
<h2>步骤 2：安装 Gemini CLI</h2>
<p>打开命令行（CMD）或终端（PowerShell / Terminal），执行以下命令进行全局安装：</p>
<pre><code class="language-bash"># Windows 用户请以管理员身份运行
# macOS/Linux 用户可能需要添加 sudo
npm install -g @google/gemini-cli
</code></pre>
<p>安装完成后，您可以通过输入 <code>gemini --version</code> 命令来验证是否安装成功。</p>
<h2>步骤 3：配置 uiuiAPI 聚合节点</h2>
<p><strong>1. 获取 API 密钥:</strong></p>
<ul>
<li>访问 [uiuiAPI 控制台]<code>https://uiuiapi.com</code>并登录。</li>
<li>创建一个新的令牌（Token），并复制生成的 <code>sk-...</code> 密钥备用。<br />
<em>(注：如果控制台有分组，请选择 Gemini 专用分组以确保最佳兼容性)</em></li>
</ul>
<p><strong>2. 创建配置文件:</strong><br />
在您的用户主目录下创建一个名为 <code>.gemini</code> 的隐藏文件夹：</p>
<ul>
<li><strong>Windows:</strong> <code>%USERPROFILE%\.gemini</code> (通常为 <code>C:\Users\您的用户名\.gemini</code>)</li>
<li><strong>macOS/Linux:</strong> <code>~/.gemini</code></li>
</ul>
<p>在该文件夹内，新建以下两个文件，并填入对应内容：</p>
<p><strong>📄 文件一：`.env</strong>`<br />
<em>(用于配置基础请求地址和密钥)</em></p>
<pre><code class="language-env">GOOGLE_GEMINI_BASE_URL=https://sg.uiuiapi.com
GEMINI_API_KEY=sk-请在此处粘贴您从 uiuiAPI 获取的真实密钥
GEMINI_MODEL=gemini-3.1-pro
</code></pre>
<p><strong>📄 文件二：`settings.json</strong>`<br />
<em>(用于开启本地 IDE 增强与安全鉴权配置)</em></p>
<pre><code class="language-json">{
  "ide": {
    "enabled": true
  },
  "security": {
    "auth": {
      "selectedType": "gemini-api-key"
    }
  }
}
</code></pre>
<p>⚠️ <strong>重要提示:</strong></p>
<ul>
<li>配置文件中的 <code>GOOGLE_GEMINI_BASE_URL</code> 必须严格填写为 <code>https://sg.uiuiapi.com</code>，且结尾不要加斜杠。</li>
</ul>
<h2>步骤 4：启动与使用</h2>
<p>一切准备就绪！打开终端，使用 <code>cd</code> 命令进入您的项目目录。<br />
运行以下命令即可唤醒助手，开始与 Gemini 3.1 Pro 互动：</p>
<pre><code class="language-bash">gemini
</code></pre>
<hr />
<h2>Gemini CLI Windows一键启动脚本这份脚本</h2>
<pre><code class="language-bat">@echo off
chcp 65001 &gt;nul
setlocal enabledelayedexpansion

echo ========================================
echo     Gemini CLI - uiuiAPI 一键配置工具
echo ========================================
echo.

REM 设置 .gemini 文件夹路径
set "GEMINI_PATH=%USERPROFILE%\.gemini"

REM 创建 .gemini 文件夹
if not exist "%GEMINI_PATH%" (
    mkdir "%GEMINI_PATH%"
    echo [√] 已自动创建文件夹: %GEMINI_PATH%
) else (
    echo [*] 文件夹已存在: %GEMINI_PATH%
)

REM 检查是否已有配置
if exist "%GEMINI_PATH%\.env" (
    echo.
    echo [!] 发现已存在的 .env 配置文件
    set /p "OVERWRITE=是否覆盖更新? (Y/N): "
    if /i not "!OVERWRITE!"=="Y" (
        echo [×] 已取消配置操作
        pause
        exit /b 1
    )
)

REM 创建 .env 文件
(
echo GOOGLE_GEMINI_BASE_URL=https://sg.uiuiapi.com
echo GEMINI_API_KEY=sk-请在此处粘贴您从 uiuiAPI 获取的真实密钥
echo GEMINI_MODEL=gemini-2.5-pro
) &gt; "%GEMINI_PATH%\.env"
echo [√] 已生成核心配置文件: %GEMINI_PATH%\.env

REM 创建 settings.json
(
echo {
echo   "ide": {
echo     "enabled": true
echo   },
echo   "security": {
echo     "auth": {
echo       "selectedType": "gemini-api-key"
echo     }
echo   }
echo }
) &gt; "%GEMINI_PATH%\settings.json"
echo [√] 已生成 IDE 增强设置: %GEMINI_PATH%\settings.json

echo.
echo ========================================
echo 🎉 恭喜！配置文件的基础框架已搭建完成！
echo ========================================
echo.
echo 下一步操作：
echo 1. 访问 https://uiuiapi.com 获取您的专属 API 密钥
echo 2. 将密钥填入刚刚生成的 .env 文件中
echo.
echo.

set /p "OPEN=是否现在立即打开 .env 文件进行填写? (Y/N): "
if /i "!OPEN!"=="Y" (
    notepad "%GEMINI_PATH%\.env"
)

echo.
echo 按任意键退出...
pause &gt;nul
</code></pre>
<p>Gemini CLI 的 Windows 一键配置脚本这套方案能极大地降低小白用户在你平台上的上手门槛。</p>]]></description>
    <pubDate>Sat, 14 Mar 2026 20:30:02 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/46</guid>
</item>
<item>
    <title>Claude Code 安装配置</title>
    <link>https://api.jieagi.com/post/45</link>
    <description><![CDATA[<h1>🔧 Claude Code 安装与 uiuiAPI 配置指南</h1>
<p>Claude Code 是由 Anthropic 官方发布的一款强大的命令行 AI 编程助手。通过以下步骤，您可以将其快速接入 <strong>uiuiAPI 聚合平台</strong>。uiuiAPI 为 Claude Code 提供专属的高速节点，完美支持以下最新模型：</p>
<p><strong>📌 支持的模型版本</strong></p>
<ul>
<li><code>claude-opus-4-6</code> - 主流 Sonnet 版本</li>
<li><code>claude-opus-4-5-20251101</code> - 主流 Sonnet 版本</li>
<li><code>claude-sonnet-4-5-20250929</code> - 最新 Sonnet 版本</li>
<li><code>claude-haiku-4-5-20251001</code> - Haiku 4.5 版本 (轻量级)</li>
</ul>
<hr />
<h2>快速开始流程</h2>
<ol>
<li><strong>安装 Node.js:</strong> 确保您的系统环境已准备就绪。</li>
<li><strong>安装 Claude Code CLI:</strong> 通过 npm 全局安装命令行工具。</li>
<li><strong>配置 uiuiAPI:</strong> 创建配置文件，填入您的专属 API 密钥和我们的服务地址。</li>
<li><strong>启动与使用:</strong> 在您的项目目录中启动 Claude Code，开始智能编程。</li>
</ol>
<hr />
<h2>🪟 Windows 平台安装教程</h2>
<p><strong>步骤 1：安装 Node.js</strong></p>
<ul>
<li><strong>推荐方法:</strong> 访问 Node.js 官网，下载并安装 LTS (长期支持) 版本的 Windows 安装程序 (.msi)。</li>
<li><strong>备用方法:</strong> 使用 winget 等包管理器打开命令行执行 <code>winget install OpenJS.NodeJS.LTS</code>。</li>
<li><strong>验证安装:</strong> 安装完成后，打开新的命令行窗口（CMD 或 PowerShell）并运行 <code>node --version</code> 和 <code>npm --version</code>。</li>
</ul>
<p><strong>步骤 2：安装 Claude Code CLI</strong><br />
以<strong>管理员身份</strong>运行命令行窗口，执行以下命令进行全局安装：</p>
<pre><code class="language-bash">npm install -g @anthropic-ai/claude-code
</code></pre>
<p>安装后，通过 <code>claude --version</code> 命令验证是否成功。</p>
<p><strong>步骤 3：配置 uiuiAPI</strong></p>
<ol>
<li><strong>获取 API 密钥:</strong> 访问 uiuiAPI 控制台并登录，创建一个新的令牌并复制生成的密钥。</li>
<li><strong>创建配置文件:</strong> 找到或创建以下路径的配置文件：<code>%USERPROFILE%\.claude\settings.json</code>。</li>
<li><strong>填入配置:</strong> 将以下内容填入 <code>settings.json</code> 文件中：</li>
</ol>
<pre><code class="language-json">{  
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "请在此处粘贴您从 uiuiAPI 获取的密钥",
    "ANTHROPIC_BASE_URL": "https://sg.uiuiapi.com"
  }
}
</code></pre>
<p>⚠️ <strong>重要提示:</strong> * 请务必将 <code>ANTHROPIC_AUTH_TOKEN</code> 的值替换为您自己的真实密钥。</p>
<p><strong>步骤 4：启动与使用</strong><br />
打开命令行，使用 <code>cd</code> 命令进入您的项目文件夹。运行 <code>claude</code> 命令启动工具，并根据首次运行的提示完成初始化设置即可。</p>
<p><strong>步骤 5：模型切换</strong></p>
<ol>
<li>启动默认是使用<code>Claude Sonnet 4.6</code>（模型 ID：<code>claude-sonnet-4-6</code>）</li>
</ol>
<p><img src="https://api.jieagi.com/content/uploadfile/202603/102e1773561320.png" alt="" /></p>
<ol start="2">
<li>
<p>在 Claude Code 中切换模型的方法：命令行启动时指定<code>claude --model claude-opus-4-6</code>，<code>claude --model claude-haiku-4-5-20251001</code></p>
<ul>
<li><strong>现主流调用模型</strong></li>
</ul>
<p>┌────────────────────┬───────────────────────────┐<br />
│        模型        │            ID             │<br />
├────────────────────┼───────────────────────────┤<br />
│ Opus 4.6（最强）   │ claude-opus-4-6           │<br />
├────────────────────┼───────────────────────────┤<br />
│ Sonnet 4.6（当前） │ claude-sonnet-4-6         │<br />
├────────────────────┼───────────────────────────┤<br />
│ Haiku 4.5（最快）  │ claude-haiku-4-5-20251001 │<br />
└────────────────────┴───────────────────────────┘</p>
<ol start="3">
<li>接在当前会话中切换：你可以在当前终端输入 /model claude-opus-4-6 来切换。</li>
</ol>
</li>
</ol>
<p><img src="https://api.jieagi.com/content/uploadfile/202603/3eed1773561959.png" alt="" /> </p>
<hr />
<h2>🍎 macOS 平台安装教程</h2>
<p><strong>步骤 1：安装 Node.js</strong></p>
<ul>
<li><strong>推荐方法:</strong> 使用 Homebrew 进行安装。打开终端执行以下命令：</li>
</ul>
<pre><code class="language-bash"># 如果未安装 Homebrew，请先安装
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装 Node.js
brew install node
</code></pre>
<ul>
<li><strong>验证安装:</strong> 运行 <code>node --version</code> 和 <code>npm --version</code>。</li>
</ul>
<p><strong>步骤 2：安装 Claude Code CLI</strong><br />
打开终端并执行：</p>
<pre><code class="language-bash">npm install -g @anthropic-ai/claude-code
</code></pre>
<p><strong>步骤 3：配置 uiuiAPI</strong></p>
<ol>
<li><strong>获取 API 密钥:</strong> 访问 uiuiAPI 控制台，创建令牌并复制密钥。</li>
<li><strong>创建配置文件:</strong> 在用户主目录下找到或创建配置文件：<code>~/.claude/settings.json</code>。</li>
<li><strong>填入以下内容:</strong></li>
</ol>
<pre><code class="language-json">{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "请在此处粘贴您从 uiuiAPI 获取的密钥",
    "ANTHROPIC_BASE_URL": "https://sg.uiuiapi.com"
  }
}
</code></pre>
<p><strong>步骤 4：启动与使用</strong><br />
打开终端，<code>cd</code> 到您的项目目录。运行 <code>claude</code> 命令即可开始体验。</p>
<hr />
<h2>🐧 Linux 平台安装教程</h2>
<p><strong>步骤 1：安装 Node.js</strong><br />
使用您的发行版包管理器进行安装。以 Ubuntu/Debian 为例：</p>
<pre><code class="language-bash"># 推荐使用 NodeSource 获取较新版本
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
</code></pre>
<ul>
<li><strong>验证安装:</strong> 运行 <code>node --version</code> 和 <code>npm --version</code>。</li>
</ul>
<p><strong>步骤 2：安装 Claude Code CLI</strong><br />
打开终端并执行：</p>
<pre><code class="language-bash">sudo npm install -g @anthropic-ai/claude-code
</code></pre>
<p><strong>步骤 3：配置 uiuiAPI</strong></p>
<ol>
<li><strong>获取 API 密钥:</strong> 访问 uiuiAPI 控制台，创建令牌并复制密钥。</li>
<li><strong>创建配置文件:</strong> 在用户主目录下找到或创建配置文件：<code>~/.claude/settings.json</code>。</li>
<li><strong>填入以下内容:</strong></li>
</ol>
<pre><code class="language-json">{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "请在此处粘贴您从 uiuiAPI 获取的密钥",
    "ANTHROPIC_BASE_URL": "https://sg.uiuiapi.com"
  }
}
</code></pre>
<p><strong>步骤 4：启动与使用</strong><br />
打开终端，<code>cd</code> 到您的项目目录。运行 <code>claude</code> 命令即可开始编程。</p>
<hr />
<h2>我为你准备了双端的一键配置脚本如下：</h2>
<h3>🪟 Windows 平台一键配置脚本 (.bat)</h3>
<ol>
<li>在电脑上新建一个文本文件。</li>
<li>将以下代码复制进去：</li>
</ol>
<pre><code class="language-bat">@echo off
chcp 65001 &gt;nul
setlocal enabledelayedexpansion

echo ========================================
echo Claude Code - uiuiAPI Windows 一键配置工具
echo ========================================
echo.

REM 设置 .claude 文件夹路径
set "CLAUDE_PATH=%USERPROFILE%\.claude"

REM 检查并创建目录
if not exist "%CLAUDE_PATH%" (
    mkdir "%CLAUDE_PATH%"
    echo [√] 已自动创建文件夹: %CLAUDE_PATH%
) else (
    echo [*] 文件夹已存在: %CLAUDE_PATH%
)

echo.
echo ========================================
REM 提示用户输入密钥
set /p API_KEY="请输入您在 uiuiAPI 控制台获取的 API 密钥 (sk-开头): "

REM 创建并写入 settings.json
(
echo {
echo   "env": {
echo     "ANTHROPIC_AUTH_TOKEN": "%API_KEY%",
echo     "ANTHROPIC_BASE_URL": "https://sg.uiuiapi.com"
echo   }
echo }
) &gt; "%CLAUDE_PATH%\settings.json"

echo.
echo [√] 已成功创建并写入配置文件: %CLAUDE_PATH%\settings.json

echo.
echo ========================================
echo 🎉 恭喜！配置已全部自动完成！
echo.
echo.
echo 您现在可以打开新的命令行窗口，输入 claude 开始体验了。
echo ========================================
echo.
pause
</code></pre>
<ol start="3">
<li>保存文件，重命名为 <code>uiuiAPI_Claude_Windows.bat</code>，直接Windows系统双击运行即可。</li>
</ol>
<hr />
<h3>🍎/🐧 macOS 与 Linux 平台一键配置脚本 (.sh)</h3>
<p>Mac 和 Linux 用户更习惯在终端里直接跑脚本。</p>
<ol>
<li>新建一个文本文件，将以下代码复制进去：</li>
</ol>
<pre><code class="language-bash">#!/bin/bash

echo "========================================"
echo " Claude Code - uiuiAPI Mac/Linux 一键配置工具"
echo "========================================"
echo ""

CLAUDE_PATH="$HOME/.claude"

# 检查并创建目录
if [ ! -d "$CLAUDE_PATH" ]; then
    mkdir -p "$CLAUDE_PATH"
    echo "[√] 已自动创建文件夹: $CLAUDE_PATH"
else
    echo "[*] 文件夹已存在: $CLAUDE_PATH"
fi

echo ""
# 提示用户输入密钥
read -p "请输入您在 uiuiAPI 控制台获取的 API 密钥 (sk-开头): " API_KEY

# 写入配置文件
cat &gt; "$CLAUDE_PATH/settings.json" &lt;&lt; EOF
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "$API_KEY",
    "ANTHROPIC_BASE_URL": "https://sg.uiuiapi.com"
  }
}
EOF

echo ""
echo "[√] 已成功创建并写入配置文件: $CLAUDE_PATH/settings.json"
echo ""
echo "========================================"
echo "🎉 恭喜！配置已全部自动完成！"
echo ""
echo ""
echo "您现在可以直接在终端输入 claude 开始体验了。"
echo "========================================"
echo ""
</code></pre>
<ol start="2">
<li>保存为 <code>uiuiAPI_Claude_MacLinux.sh</code>。</li>
</ol>]]></description>
    <pubDate>Sat, 14 Mar 2026 20:16:53 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/45</guid>
</item>
<item>
    <title>CodeX CLI安装配置</title>
    <link>https://api.jieagi.com/post/44</link>
    <description><![CDATA[<h1>🚀 CodeX 安装与 uiuiAPI 配置指南</h1>
<p>CodeX 是基于 OpenAI GPT 模型的强大终端代码助手。按照以下步骤，您可以将其无缝配置为使用 <strong>uiuiAPI 聚合平台</strong>服务，享受极速、满血的 AI 编程体验。</p>
<p>如果你电脑上已经有了，直接跳过。没有的话，建议无脑默认路径安装，省去很多麻烦。</p>
<h3>步骤 1：安装 CodeX CLI</h3>
<ol>
<li><strong>下载 Git</strong>: [<code>https://git-scm.com/downloads/win</code>] (macOS 通常自带，或通过 Homebrew 安装 <code>brew install git</code>)</li>
<li><strong>下载 Node.js</strong>: [<code>https://nodejs.org/zh-cn/download</code>](同样，一路 <code>Next</code> 即可)</li>
</ol>
<h3>步骤 2：安装 CodeX CLI</h3>
<p>打开命令行（CMD）或终端（PowerShell），执行以下命令进行全局安装：</p>
<pre><code class="language-bash"># Windows 用户建议以管理员身份运行终端
# macOS/Linux 用户可能需要添加 sudo
npm install -g @openai/codex@latest
</code></pre>
<p>安装后，可以通过输入 <code>codex --version</code> 命令来验证是否成功。<br />
<em>(注：如果 Windows 提示找不到 codex 命令，请尝试使用 <code>npx @openai/codex</code> 临时启动，或检查系统的 npm 环境变量配置。)</em></p>
<h3>步骤 3：配置 uiuiAPI 聚合节点</h3>
<p>CodeX 的配置分为 <code>config.toml</code> 和 <code>auth.json</code> 两个文件。我们将通过这两个文件，将服务的请求地址和鉴权完全指向 uiuiAPI。</p>
<p><strong>1. 获取 API 密钥:</strong></p>
<ul>
<li>访问 [uiuiAPI 控制台]<code>https://uiuiapi.com</code>。</li>
<li>创建一个新的令牌（Token）。</li>
<li>复制生成的 <code>sk-...</code> 密钥备用。</li>
</ul>
<p><strong>2. 创建配置文件:</strong><br />
在您的用户主目录下创建一个名为 <code>.codex</code> 的隐藏文件夹：</p>
<ul>
<li><strong>Windows:</strong> <code>%USERPROFILE%\.codex</code> (通常为 <code>C:\Users\你的用户名\.codex</code>)</li>
<li><strong>macOS/Linux:</strong> <code>~/.codex</code></li>
</ul>
<p>在<code>.codex</code>该文件夹内，新建以下两个文件，并填入对应内容：</p>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/5d8c1773489491.png" alt="" /></p>
<p><strong>📄 文件一：<code>config.toml</code></strong><br />
<em>(包含满血推理与联网搜索的高级配置)</em></p>
<pre><code class="language-toml">disable_response_storage = true
model = "gpt-5.2"
model_provider = "uiuiapi"
model_reasoning_effort = "xhigh"
model_verbosity = "high"

[features]
web_search_request = true

[model_providers.uiuiapi]
name = "uiuiAPI"
# uiuiAPI 新加坡高速中转节点
base_url = "https://sg.uiuiapi.com/v1"
wire_api = "responses"
# 必须开启此项，配合 auth.json 完成平台鉴权
requires_openai_auth = true
</code></pre>
<p><strong>📄 文件二：<code>auth.json</code></strong></p>
<pre><code class="language-json">{
  "OPENAI_API_KEY": "sk-请在此处粘贴您从 uiuiAPI 获取的真实密钥"
}
</code></pre>
<p>⚠️ <strong>重要提示:</strong></p>
<ul>
<li>请确保 <code>auth.json</code> 中的密钥格式正确，不要遗漏双引号。</li>
<li><code>config.toml</code> 中的 <code>base_url</code> 必须精确到 <code>/v1</code> 路径后缀。</li>
</ul>
<h3>步骤 4：启动与使用</h3>
<p>一切准备就绪！打开终端，使用 <code>cd</code> 命令进入您正在开发的项目代码目录，直接运行以下命令即可唤醒您的私人代码助手：</p>
<pre><code class="language-bash">codex
</code></pre>
<hr />
<p>这份重构后的教程逻辑非常顺畅，而且把配置文件的存放路径和常见坑点都标清楚了。</p>
<h3><strong>步骤 5：一键配置脚本 (.bat)启动！</strong></h3>
<p>这份脚本写得非常棒！尤其是最后加上了 <code>notepad</code> 自动打开文件让用户填秘钥的交互逻辑，非常人性化。</p>
<p>我已经将它完美替换成了 <strong>uiuiAPI</strong> 的配置，并且把咱们之前调好的顶配参数（<code>gpt-5.2</code>、满血推理 <code>xhigh</code>、联网搜索等）都整合进去了。</p>
<p>请直接复制以下代码，替换掉你原来的脚本内容：</p>
<pre><code class="language-bat">@echo off
chcp 65001 &gt;nul
setlocal enabledelayedexpansion

echo ========================================
echo CodeX 助手 - uiuiAPI 一键配置工具
echo ========================================
echo.

REM 设置 .codex 文件夹路径
set "CODEX_PATH=%USERPROFILE%\.codex"

REM 创建 .codex 文件夹
if not exist "%CODEX_PATH%" (
    mkdir "%CODEX_PATH%"
    echo [√] 已创建文件夹: %CODEX_PATH%
) else (
    echo [!] 文件夹已存在: %CODEX_PATH%
)

REM 创建 config.toml
(
echo disable_response_storage = true
echo model_provider = "uiuiapi"
echo model = "gpt-5.2"
echo model_reasoning_effort = "xhigh"
echo model_verbosity = "high"
echo.
echo [features]
echo web_search_request = true
echo.
echo [model_providers.uiuiapi]
echo name = "uiuiAPI"
echo base_url = "https://sg.uiuiapi.com/v1"
echo wire_api = "responses"
echo requires_openai_auth = true
) &gt; "%CODEX_PATH%\config.toml"
echo [√] 已创建核心配置文件: %CODEX_PATH%\config.toml

REM 创建 auth.json
(
echo {
echo    "OPENAI_API_KEY": "sk-请在此处粘贴您从 uiuiapi.com 获取的真实密钥"
echo }
) &gt; "%CODEX_PATH%\auth.json"
echo [√] 已创建密钥配置文件: %CODEX_PATH%\auth.json

echo.
echo ========================================
echo 配置文件的基础框架已搭建完成！
echo.
echo ⚠️ 最后一步：
echo 请编辑 auth.json 文件，将里面的提示文字替换为您真实的 API 密钥。
echo ========================================
echo.

set /p "OPEN=是否现在立即打开 auth.json 文件进行填写? (Y/N): "
if /i "!OPEN!"=="Y" (
    notepad "%CODEX_PATH%\auth.json"
)

pause
</code></pre>
<h3>💡 脚本优化亮点：</h3>
<ol>
<li><strong>整合了最强参数：</strong> 把之前你需要的 <code>web_search_request</code> 和 <code>xhigh</code> 思考强度都通过 <code>echo</code> 写入了 <code>config.toml</code>。</li>
<li><strong>保留了你的优秀交互：</strong> 完美保留了按 <code>Y</code> 直接弹窗唤起记事本的功能。</li>
<li><strong>中文提示语微调：</strong> 把界面的提示语改得更明确了，防止用户填错格式。</li>
</ol>]]></description>
    <pubDate>Sat, 14 Mar 2026 20:09:29 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/44</guid>
</item>
<item>
    <title>OpenClaw Windows 原生安装部署</title>
    <link>https://api.jieagi.com/post/43</link>
    <description><![CDATA[<h2>OpenClaw Windows 原生安装部署与uiuiAPI聚合中转获取Claude apikey接入配置教程</h2>
<p>OpenClaw（前身为 Clawdbot / MoltBot）是一个开源的本地优先 AI Agent 网关，可以将大语言模型连接到你的本地系统和消息平台（Telegram、WhatsApp、Discord、飞书、企业微信 等），实现 24/7 全天候的个人 AI 助手。</p>
<p>这篇教程将带你完成从底层环境搭建、大语言模型 API 接入，到最终将其作为自动化机器人部署到飞书工作台的全流程（自定义 Base URL + API Key）获取Claude apikey接入 Claude 模型。</p>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/df9f1773411181.png" alt="" /></p>
<hr />
<h2>一、安装前准备</h2>
<h3>1.1 系统要求</h3>
<ul>
<li>Windows 10 / Windows 11</li>
<li>Node.js 22+ LTS</li>
<li>Git</li>
<li>至少 2GB 可用磁盘空间</li>
<li>uiuiAPI获取APIKey</li>
</ul>
<h3>1.2 安装 Node.js</h3>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/cdae1773408670.png" alt="" /></p>
<ol>
<li>访问 [Node.js 官网]<code>https://nodejs.org</code>，下载 Node.js 22 LTS 的 Windows 安装包（<code>.msi</code>）。</li>
<li>运行安装程序，勾选 &quot;Automatically install the necessary tools&quot;。</li>
<li>安装完成后，关闭并重新打开 PowerShell，验证安装：</li>
</ol>
<pre><code class="language-powershell">node --version   # 应显示 v22.x.x
npm --version    # 应显示版本号
</code></pre>
<blockquote>
<p><strong>提示：</strong> 如果提示 <code>node</code> 不是可识别的命令，手动将 <code>C:\Program Files\nodejs\</code> 添加到系统 PATH 环境变量，或者重启电脑。</p>
</blockquote>
<h3>1.3 安装 Git</h3>
<p>在 PowerShell 中运行以下命令：</p>
<pre><code class="language-powershell">winget install Git.Git
</code></pre>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/8dc31773408796.png" alt="" /><br />
<em>(或从 [Git 官网]<code>https://git-scm.com</code>下载安装，操作：在官网根据电脑架构（如 Windows x64）下载安装包，普通用户无需纠结高级设置，保持默认选项完成安装。安装时选择 &quot;Use Git from the command line and also from 3rd-party software&quot;。)</em></p>
<p>安装后关闭并重新打开 PowerShell，验证：</p>
<pre><code class="language-powershell">git --version
</code></pre>
<hr />
<h2>二、Windows 原生 PowerShell 安装 OpenClaw</h2>
<h3>2.1 配置 PowerShell 环境</h3>
<p>以管理员身份打开 PowerShell（右键开始菜单 → Windows PowerShell (管理员)），依次执行以下命令：</p>
<pre><code class="language-powershell"># 允许脚本执行
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

# 修改 npm 全局安装目录（避免权限冲突）
npm config set prefix "C:\npm"
npm config set cache "C:\npm-cache"

# 将新目录添加到用户 PATH
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\npm", "User")
</code></pre>
<p><strong>执行完成后，关闭 PowerShell 并重新打开一个新窗口（让 PATH 生效）。</strong></p>
<h3>2.2 安装 OpenClaw</h3>
<p>有两种方式，推荐先试方式一：</p>
<p><strong>方式一：一键安装脚本</strong></p>
<pre><code class="language-powershell">iwr -useb https://openclaw.ai/install.ps1 | iex
</code></pre>
<p><strong>方式二：手动 npm 安装（如果一键脚本报错）</strong></p>
<pre><code class="language-powershell">npm install -g openclaw
</code></pre>
<p><strong>常见报错处理：</strong></p>
<ul>
<li><strong>node.exe 应用程序错误</strong>：临时关闭 Windows Defender 实时保护，再重试。</li>
<li><strong>spawn git ENOENT</strong>：Git 未安装或 PowerShell 未重启，先装 Git 再重开窗口。</li>
<li><strong>权限错误</strong>：以管理员身份运行 PowerShell。</li>
</ul>
<h3>2.3 运行引导向导</h3>
<p>引导向导会依次询问你以下内容：</p>
<ol>
<li><strong>安全确认</strong>：用方向键选择 &quot;Yes&quot;（确认你理解 OpenClaw 有系统访问权限）。</li>
<li><strong>安装模式</strong>：选择 &quot;QuickStart&quot; 快速完成基础配置。</li>
<li><strong>选择 LLM 提供商</strong>：这里先随便选一个或跳过，也可以先选No先跳过。我们后面手动配置uiuiAPI的apikey服务。</li>
</ol>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/6b531773409135.png" alt="" /></p>
<ol start="4">
<li><strong>配置消息平台（可选）</strong>：Telegram / WhatsApp / Discord / 钉钉 / 飞书 / 企业微信，QQ 等 可以之后再配。</li>
<li><strong>Shell 补全（可选）</strong>：建议选 Yes，加速命令输入。</li>
<li><strong>包管理器</strong>：选择 npm。</li>
<li>后续选项一路选 &quot;No/Default&quot; 即可。</li>
</ol>
<blockquote>
<p><strong>提示</strong>：如果引导过程中就想配置 API，可以暂时跳过 LLM 选择，等安装完成后手动编辑配置文件（见下一章），这样更灵活。</p>
</blockquote>
<h3>2.4 验证安装</h3>
<p>在浏览器中访问 <code>http://127.0.0.1:18789/</code>。如果显示 &quot;unauthorized&quot;，在命令行运行 <code>openclaw dashboard</code> 命令，会打印一个带 <code>?token=...</code> 的链接，用那个链接打开即可。</p>
<blockquote>
<p><strong>注意</strong>：如果 Gateway 安装为后台服务失败（需要管理员权限），可以用前台模式手动启动：<code>openclaw gateway --port 18789</code></p>
</blockquote>
<hr />
<h2>三、配置uiuiAPI代理获取Claude APIkey 调用大模型服务</h2>
<p>使用uiuiAPI代理（API Proxy / Relay）接入 Claude，你需要两样东西：</p>
<ol>
<li><strong>Base URL</strong>：uiuiAPI服务提供的 API 地址</li>
<li><strong>API Key</strong>：uiuiAPI服务给你的密钥</li>
</ol>
<h3>3.1 确认你的中转服务信息</h3>
<table>
<thead>
<tr>
<th>信息项</th>
<th>示例值</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Base URL</strong></td>
<td><code>https://sg.uiuiapi.com</code></td>
<td>代理服务 API 地址</td>
</tr>
<tr>
<td><strong>API Key</strong></td>
<td><code>sk-xxxxxxxxxxxxxxxx</code></td>
<td>中转服务给你的密钥</td>
</tr>
<tr>
<td><strong>支持的模型</strong></td>
<td><code>claude-sonnet-4-5-20250929，GPT-5、Gemini-3-Pro</code> 等</td>
<td>可在UIUIAPI模型广场支持哪些</td>
</tr>
</tbody>
</table>
<p><strong>关键点</strong>：uiuiAPI聚合服务兼容Anthropic 原生格式（<code>anthropic-messages</code>）和 OpenAI 兼容格式（<code>openai-completions</code>）。</p>
<p><img src="https://www.jieagi.com/content/uploadfile/202603/8bb91773411347.png" alt="" /></p>
<h3>3.2 编辑 OpenClaw 配置文件</h3>
<p>OpenClaw 的配置文件默认位于：<code>C:\Users\你的用户名\.openclaw\openclaw.json</code>。用记事本、VS Code 或任何文本编辑器打开它。</p>
<h3>3.3 配置方案 A：uiuiAPI服务兼容 Anthropic 原生格式（推荐）</h3>
<p>如果支持 Anthropic 原生 API（<code>/v1/messages</code> 端点），使用 <code>anthropic-messages</code> 格式。这是推荐方案，可使用 Claude 全部高级功能。在 <code>openclaw.json</code> 中添加或修改为以下内容：</p>
<p>清空 <code>openclaw.json</code>，把下面这段加上了 <code>"name": "Claude Sonnet 4.5"</code> 的终极完整版代码复制进去：</p>
<pre><code class="language-json">{
  "models": {
    "providers": {
      "uiuiapi": {
        "api": "anthropic-messages",
        "baseUrl": "https://sg.uiuiapi.com",
        "apiKey": "sk-在这里填入你在uiuiAPI生成的真实密钥",
        "headers": {
          "anthropic-version": "2023-06-01",
          "anthropic-beta": ""
        },
        "models": [
          {
            "id": "claude-sonnet-4-5-20250929",
            "name": "Claude Sonnet 4.5",
            "contextWindow": 200000,
            "maxTokens": 8192,
            "reasoning": true
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "uiuiapi/claude-sonnet-4-5-20250929"
      }
    }
  }
}
</code></pre>
<p><em>(再次提醒：别忘了替换你的 <code>sk-...</code> 密钥。)</em></p>
<p>保存退出，回到 PowerShell 再次运行：</p>
<p><strong>第一步：重新设置本地模式</strong><br />
在 PowerShell 里运行下面这行命令：</p>
<pre><code class="language-powershell">openclaw config set gateway.mode local
</code></pre>
<p><strong>第二步：再次启动网关</strong><br />
紧接着运行启动命令：</p>
<pre><code class="language-powershell">openclaw gateway --port 18789
</code></pre>
<p>保持这个窗口不要关，切换到你的浏览器刷新一下 Dashboard 页面（<code>http://127.0.0.1:18789</code>），去跟 Claude 发第一条消息测试一下吧！</p>
<p><strong>注意事项：</strong></p>
<ul>
<li><strong><code>baseUrl</code> 不要在末尾加 <code>/v1</code></strong> 。OpenClaw 使用此格式时会自动拼接 <code>/v1/messages</code>。如果 URL 已包含 <code>/v1</code>，最终会变成 <code>/v1/v1/messages</code> 导致 404 错误。</li>
<li><code>"api": "anthropic-messages"</code> 必须设置，否则默认走 OpenAI 兼容模式。</li>
<li><code>headers</code> 中的 <code>anthropic-version</code> 一般需设置为 <code>"2023-06-01"</code>。</li>
<li>模型 <code>id</code> 需与中转服务实际支持的模型一致。</li>
<li>如果中转服务在 thinking/reasoning 功能上不兼容，可在 headers 中将 <code>anthropic-beta</code> 设为空字符串来禁用。</li>
</ul>
<h3>3.4 配置方案 B：uiuiAPI服务兼容 OpenAI 格式</h3>
<p>OpenClaw 2026 最新版，我们就必须严格按照它要求的“套娃”结构来写，同时还要补齐新版必须的 <code>name</code> 字段和路由配置。</p>
<p>下面是为你彻底重构并优化好的 <strong>OpenAI 兼容格式终极版</strong>，你可以直接复制使用：</p>
<pre><code class="language-json">{
  "gateway": {
    "mode": "local"
  },
  "models": {
    "providers": {
      "uiuiapi": {
        "api": "openai-completions",
        "baseUrl": "https://sg.uiuiapi.com/v1",
        "apiKey": "sk-xxxxxxxxxxxxxxxx",
        "models": [
          {
            "id": "gpt-4.1",
            "name": "GPT-4.1",
            "contextWindow": 128000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "uiuiapi/gpt-4.1"
      }
    }
  }
}
</code></pre>
<h3>💡 新版<code>json</code>代码核心优化点说明：</h3>
<ol>
<li><strong>全面适配最新版架构</strong>：将 <code>api</code>、<code>baseUrl</code> 和 <code>apiKey</code> 全部收纳进 <code>models.providers.uiuiapi</code> 节点下，彻底消灭 <code>Unrecognized keys</code> 报错。</li>
<li><strong>保留 <code>/v1</code> 后缀</strong>：与 Anthropic 原生格式不同，OpenAI 兼容接口的标准路径就是以 <code>/v1</code> 结尾，所以 <code>"baseUrl": "https://sg.uiuiapi.com/v1"</code> 是完全正确的标准写法。</li>
<li><strong>补充必填字段</strong>：增加了 <code>"name": "GPT-4.1"</code>。如果没有这个字段，Dashboard 控制面板会因为读不到显示名称而报错 <code>received undefined</code>。</li>
<li><strong>添加上下文参数</strong>：补充了通用的 <code>contextWindow</code> (上下文窗口) 和 <code>maxTokens</code> (最大输出)，让网关能更精准地控制记忆长度。</li>
<li><strong>打通主模型路由</strong>：在 <code>agents.defaults</code> 中明确指定了默认调用的模型为 <code>uiuiapi/gpt-4.1</code>，确保发消息时有模型接单。</li>
</ol>
<h3>3.5 两种格式对比速查</h3>
<table>
<thead>
<tr>
<th>对比项</th>
<th>anthropic-messages（推荐）</th>
<th>openai-completions</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>api 字段</strong></td>
<td><code>"anthropic-messages"</code></td>
<td><code>"openai-completions"</code></td>
</tr>
<tr>
<td><strong>baseUrl 末尾</strong></td>
<td><strong>不加 <code>/v1</code></strong></td>
<td><strong>要加 <code>/v1</code></strong></td>
</tr>
<tr>
<td><strong>Prompt Caching</strong></td>
<td>支持</td>
<td>不支持</td>
</tr>
<tr>
<td><strong>Extended Thinking</strong></td>
<td>支持</td>
<td>不支持</td>
</tr>
<tr>
<td><strong>Tool Calling 稳定性</strong></td>
<td>更好（原生格式）</td>
<td>可能有兼容问题</td>
</tr>
<tr>
<td><strong>适用场景</strong></td>
<td>中转支持 Anthropic 原生 API</td>
<td>中转支持 OpenAI 原生接口</td>
</tr>
</tbody>
</table>
<blockquote>
<p><strong>建议</strong>：如果同时支持两种格式，优先选 <code>anthropic-messages</code>。</p>
</blockquote>
<h2>四、anthropic主备模型自动切换配置文件示例</h2>
<p>这是完美适配 2026 最新版 OpenClaw 的完整版 <code>openclaw.json</code> 代码，支持了主备模型自动切换，并且修复了所有的格式验证要求。</p>
<p>你可以直接一键复制，<strong>全部覆盖</strong>掉文件里的原有内容：</p>
<pre><code class="language-json">{
  "gateway": {
    "mode": "local"
  },
  "models": {
    "providers": {
      "uiuiapi": {
        "api": "anthropic-messages",
        "baseUrl": "https://sg.uiuiapi.com",
        "apiKey": "sk-请替换为你的uiuiAPI真实密钥",
        "headers": {
          "anthropic-version": "2023-06-01",
          "anthropic-beta": ""
        },
        "models": [
          {
            "id": "claude-sonnet-4-5-20250929",
            "name": "Claude Sonnet 4.5",
            "contextWindow": 200000,
            "maxTokens": 8192,
            "reasoning": true
          },
          {
            "id": "claude-opus-4-6",
            "name": "Claude Opus 4.6",
            "contextWindow": 200000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "uiuiapi/claude-sonnet-4-5-20250929",
        "fallbacks": [
          "uiuiapi/claude-opus-4-6"
        ]
      }
    }
  }
}
</code></pre>
<p>⚠️ <strong>关键提醒：</strong> 粘贴完成后，千万别忘了把第 10 行的 <code>sk-请替换为你的uiuiAPI真实密钥</code> 换成你实际生成的 Key。</p>
<h2>五、Claude 和 GPT 组合在一起“双引擎”配置文件示例</h2>
<p>把 Claude 和 GPT 组合在一起，正是 uiuiAPI 这种聚合中转平台最强大的玩法。这能让你的 AI 助手拥有“双引擎”，不仅能应对各种复杂的任务，还能做到极高的稳定性。</p>
<p><strong>特别注意一个核心逻辑：</strong> 因为 Claude（Anthropic 协议，不带 <code>/v1</code>）和 GPT（OpenAI 协议，带 <code>/v1</code>）的底层通信格式是完全不同的。在 OpenClaw 2026 最新版中，我们不能把它们混在一个筐里，<strong>必须把它们拆分成两个独立的“供应商（providers）”</strong>。</p>
<p>下面为你精心调校的<strong>“Claude + GPT 双引擎终极版” <code>openclaw.json</code> 配置</strong>。你可以直接把它加到你的知乎教程里，作为一个<strong>高阶玩法（进阶篇）</strong>展示给读者：</p>
<pre><code class="language-json">{
  "gateway": {
    "mode": "local"
  },
  "models": {
    "providers": {
      "uiuiapi-claude": {
        "api": "anthropic-messages",
        "baseUrl": "https://sg.uiuiapi.com",
        "apiKey": "sk-请替换为你的uiuiAPI真实密钥",
        "headers": {
          "anthropic-version": "2023-06-01",
          "anthropic-beta": ""
        },
        "models": [
          {
            "id": "claude-sonnet-4-5-20250929",
            "name": "Claude Sonnet 4.5",
            "contextWindow": 200000,
            "maxTokens": 8192,
            "reasoning": true
          }
        ]
      },
      "uiuiapi-gpt": {
        "api": "openai-completions",
        "baseUrl": "https://sg.uiuiapi.com/v1",
        "apiKey": "sk-请替换为你的uiuiAPI真实密钥",
        "models": [
          {
            "id": "gpt-4.1",
            "name": "GPT-4.1",
            "contextWindow": 128000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "uiuiapi-claude/claude-sonnet-4-5-20250929",
        "fallbacks": [
          "uiuiapi-gpt/gpt-4.1"
        ]
      }
    }
  }
}
</code></pre>
<p><em>(再次提醒：别忘了替换你的 <code>sk-...</code> 密钥。)</em></p>
<p>保存退出，回到 PowerShell 再次运行：</p>
<p><strong>第一步：重新设置本地模式</strong><br />
在 PowerShell 里运行下面这行命令：</p>
<pre><code class="language-powershell">openclaw config set gateway.mode local
</code></pre>
<p><strong>第二步：再次启动网关</strong><br />
紧接着运行启动命令：</p>
<pre><code class="language-powershell">openclaw gateway --port 18789
</code></pre>
<p>保持这个窗口不要关，切换到你的浏览器刷新一下 Dashboard 页面（<code>http://127.0.0.1:18789</code>），去跟 Claude 发第一条消息测试一下吧！</p>
<h3>💡双引擎配置的核心亮点</h3>
<p>在给读者讲解这段代码时，你可以提炼出以下几个极具吸引力的“硬核卖点”：</p>
<ol>
<li><strong>协议隔离，互不干扰</strong>：我们巧妙地在 <code>providers</code> 下定义了 <code>uiuiapi-claude</code> 和 <code>uiuiapi-gpt</code> 两个独立通道。一个走原生的 Anthropic 协议享受极致性能，另一个走标准的 OpenAI 兼容协议。</li>
<li><strong>共用余额，无缝对接</strong>：虽然分了两个通道，但它们都指向 <code>sg.uiuiapi.com</code> 并且使用同一个 <code>apiKey</code>，消耗同一个账户的额度，管理起来极其省心。</li>
<li><strong>企业级的“容灾备份”策略</strong>：在最底部的 <code>agents.defaults</code> 中，我们将公认写代码和逻辑最强的 <code>Claude Sonnet 4.5</code> 设为绝对主力（<code>primary</code>）。同时，将 <code>GPT-4.1</code> 放入备用池（<code>fallbacks</code>）。万一哪天 Claude 接口出现大面积网络波动，系统会在毫秒级无缝切换到 GPT-4.1 继续为你解答，<strong>保证你的飞书机器人 24 小时绝对不宕机！</strong></li>
</ol>
<h3>⚙️ 核心配置字段对照说明</h3>
<h4>1. 网关基础设置 (<code>gateway</code>)</h4>
<ul>
<li><strong><code>"mode": "local"</code></strong> ：明确告诉 OpenClaw 以“本地模式”运行。这是解决刚安装完时频繁报错 <code>Gateway start blocked</code>（网关启动被拦截）的关键开关。</li>
</ul>
<h4>2. 服务商与网络通道 (<code>providers.uiuiapi</code>)</h4>
<p>这是连接本地网关与 uiuiAPI 中转服务的桥梁：</p>
<ul>
<li><strong><code>"uiuiapi"</code></strong> ：我们在配置里自定义的服务商名称前缀，后续调用模型时会用到。</li>
<li><strong><code>"api" : "anthropic-messages"</code></strong> ：指定通信协议格式。采用 Anthropic 原生协议，确保能完整调用 Claude 的提示词缓存（Prompt Caching）等高级特性。</li>
<li><strong><code>"baseUrl"</code></strong> ：uiuiAPI 的服务器接口地址，注意末尾不要加 <code>/v1</code>，系统会自动拼接。</li>
<li><strong><code>"apiKey"</code></strong> ：用于身份验证的专属秘钥（从平台获取）。</li>
<li><strong><code>"headers"</code></strong> ：请求头参数。其中 <code>"anthropic-beta": ""</code> 被刻意设置为空字符串，这是一个高级排错技巧，用于屏蔽部分中转服务不支持的测试版功能，防止出现 400 兼容性报错。</li>
</ul>
<h4>3. 模型精细化定义 (<code>models</code> 数组)</h4>
<p>在这个数组里，我们注册了两个具体的模型（Sonnet 和 Opus）：</p>
<ul>
<li><strong><code>"id"</code></strong> ：大语言模型在后端的真实请求 ID（如 <code>claude-sonnet-4-5-20250929</code>），必须与平台支持的模型库完全一致。</li>
<li><strong><code>"name"</code></strong> ：<strong>（新版必填项）</strong> 在 Dashboard 控制面板里展示给用户看的“花名”。不填这个会导致 <code>undefined</code> 报错。</li>
<li><strong><code>"contextWindow"</code></strong> ：模型的上下文窗口大小（Claude 系列通常支持 200,000 tokens）。这能让网关知道什么时候该截断历史记录。</li>
<li><strong><code>"maxTokens"</code></strong> ：单次回答允许输出的最大 Token 数。</li>
<li><strong><code>"reasoning": true</code></strong> ：能力标识，告诉 Agent 这个模型具备高级逻辑推理和思考能力。</li>
</ul>
<h4>4. 自动化调度策略 (<code>agents.defaults</code>)</h4>
<p>让你的 AI 助手永不掉线的核心策略区：</p>
<ul>
<li><strong><code>"primary"</code></strong> ：设定默认的主力干活模型（格式为 <code>服务商名称/模型ID</code>）。这里设为了性价比较高的 Sonnet。</li>
<li><strong><code>"fallbacks"</code></strong> ：备用模型池。当主力模型遇到网络波动、接口限流或不可用时，系统会自动无缝切换到数组里的备用模型（如 Opus）继续作答，保障 24 小时全天候服务的稳定性。</li>
</ul>
<hr />
<h2>六、进阶配置</h2>
<h3>5.1 多 Agent 使用不同模型</h3>
<p>为不同任务分配不同模型，平衡费用和性能。例如：复杂任务用 Opus，日常聊天用 Sonnet。这通常可以在 Dashboard 界面中针对不同的 Agent 单独指定。</p>
<h3>5.2 切换默认模型</h3>
<p>如果想在命令行快速切换主力模型，可以使用：</p>
<pre><code class="language-powershell">openclaw models set &lt;model_id&gt;
</code></pre>
<h3>5.3 配置消息平台（可选）</h3>
<p>安装完成后可以随时添加消息平台，在终端输入以下命令并按提示操作：</p>
<pre><code class="language-powershell">openclaw configure
</code></pre>
<h4>一、飞书工作台深度接入为例</h4>
<ul>
<li><strong>1. 创建飞书应用：</strong> 登录飞书开放平台，进入“开发者后台”，点击创建<strong>企业自建应用</strong>，填写机器人的名称与描述。</li>
<li><strong>2. 开通基础权限：</strong> 在应用设置中添加<strong>机器人</strong>能力。进入“权限管理”，搜索栏输入 <strong>IM:</strong>，勾选开通所有与消息相关的权限。随后点击“创建版本”并确认发布（版本号可设为 1.0.0）。</li>
<li><strong>3. 唤醒配置终端：</strong> 回到 PowerShell 终端，输入 <code>openclaw</code> 配置命令重新进入设置界面。选择配置通讯渠道并添加飞书，系统会自动通过 npm 安装飞书插件。</li>
<li><strong>4. 绑定飞书凭证：</strong> 将飞书开发者后台提供的 <strong>App Secret</strong> 和 <strong>App ID</strong> 复制，并依次粘贴到 PowerShell 终端中。</li>
<li><strong>5. 设置通信协议：</strong> 通信方式选择配置最简单的 <strong>WebSocket</strong> 模式。根据你的实际需求，设置私聊和群聊的访问权限（例如选择 <strong>Open</strong> 允许团队所有人使用）。</li>
<li><strong>6. 配置事件回调：</strong> 返回飞书开发者后台，在“事件与回调”模块中，将订阅方式切换为<strong>长链接</strong>，并搜索添加<strong>接收消息</strong>事件。</li>
<li><strong>7. 补充权限并生效：</strong> 再次进入飞书“权限管理”，补充开通<strong>获取机器人基本信息</strong>等权限。最后，务必再次发布一个新版本，使所有配置正式生效。</li>
</ul>
<hr />
<h4>二、测试与能力进阶</h4>
<ul>
<li>
<p><strong>1. 最终联调测试：</strong> 打开飞书 APP 或桌面端，在消息列表中搜索并打开你刚刚创建的机器人应用。尝试私聊发送消息，或将其拉入群聊中 <strong>@</strong> 它进行提问，确认回复延迟和逻辑是否正常。<br />
<img src="https://www.jieagi.com/content/uploadfile/202603/9b4b1773409594.png" alt="" /><br />
<img src="https://www.jieagi.com/content/uploadfile/202603/6c091773409656.png" alt="" /></p>
</li>
<li>
<p><strong>2. 扩展自动化技能：</strong> 基础对话跑通后，你可以回到 OpenClaw 的配置界面，为它安装更多自动化 <strong>Skills</strong>（例如 AI 绘图、自动搜集资料等）。强烈建议仅安装官方或来源可靠的技能插件，以保障你的 API 额度与数据安全。</p>
</li>
</ul>
<hr />
<h2>七、常用命令速查</h2>
<table>
<thead>
<tr>
<th>命令</th>
<th>作用</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>openclaw gateway status</code></td>
<td>检查网关运行状态</td>
</tr>
<tr>
<td><code>openclaw gateway restart</code></td>
<td>重启网关</td>
</tr>
<tr>
<td><code>openclaw gateway --port 18789</code></td>
<td>前台模式启动网关</td>
</tr>
<tr>
<td><code>openclaw dashboard</code></td>
<td>打开控制面板</td>
</tr>
<tr>
<td><code>openclaw models list</code></td>
<td>查看所有已配置的模型</td>
</tr>
<tr>
<td><code>openclaw models set &lt;model&gt;</code></td>
<td>切换默认模型</td>
</tr>
<tr>
<td><code>openclaw doctor</code></td>
<td>自动诊断和修复问题</td>
</tr>
<tr>
<td><code>openclaw doctor --fix</code></td>
<td>自动修复发现的问题</td>
</tr>
<tr>
<td><code>openclaw gateway logs</code></td>
<td>查看网关后台日志</td>
</tr>
<tr>
<td><code>openclaw logs --follow</code></td>
<td>实时追踪日志（排错必备）</td>
</tr>
<tr>
<td><code>openclaw status --all</code></td>
<td>查看完整诊断报告</td>
</tr>
<tr>
<td><code>openclaw configure</code></td>
<td>重新配置频道等选项</td>
</tr>
<tr>
<td><code>openclaw --version</code></td>
<td>查看当前版本</td>
</tr>
</tbody>
</table>
<hr />
<h2>八、常见问题排查</h2>
<p><strong>Q1：修改了配置但没生效</strong><br />
最常见的原因是已有会话缓存了旧配置。解决方法：</p>
<ol>
<li>重启 Gateway：<code>openclaw gateway restart</code></li>
<li>在新的聊天频道中测试（不要在旧会话中测试）。</li>
</ol>
<p><strong>Q2：请求返回 404 错误</strong><br />
检查 <code>baseUrl</code> 配置：</p>
<ul>
<li>如果 <code>api</code> 是 <code>anthropic-messages</code>：<code>baseUrl</code> <strong>不要</strong>加 <code>/v1</code>。</li>
<li>如果 <code>api</code> 是 <code>openai-completions</code>：<code>baseUrl</code> <strong>要</strong>加 <code>/v1</code>。</li>
</ul>
<p><strong>Q3：报错 &quot;invalid beta flag&quot; 或 &quot;ValidationException&quot;</strong><br />
某些中转服务不支持 Anthropic 的 beta 功能。请在配置的 <code>headers</code> 中显式禁用它：</p>
<pre><code class="language-json">"headers": {
  "anthropic-beta": ""
}
</code></pre>
<p><strong>Q4：Gateway 无响应或端口占用</strong><br />
尝试重启电脑，或者使用 <code>openclaw doctor</code> 检查端口冲突问题。</p>
<p><strong>Q5：PowerShell 安装时 node.exe 报错</strong></p>
<ul>
<li>右键下载的文件 → 属性 → 勾选&quot;解除锁定&quot; → 应用。</li>
<li>临时关闭 Windows Defender 实时保护。</li>
<li>以管理员身份运行 PowerShell。</li>
</ul>
<p><strong>Q6：npm 安装报错 &quot;spawn git ENOENT&quot;</strong><br />
Git 没有安装。先按 1.3 节安装 Git，然后关闭并重新打开 PowerShell 再重试。</p>
<p><strong>Q7：如何查看具体的 API 请求错误</strong><br />
实时查看日志（<code>openclaw logs --follow</code>），发送一条消息后观察日志中的错误信息，通常会显示 HTTP 状态码和错误详情。</p>
<hr />
<h2>九、安全注意事项</h2>
<ul>
<li><strong>API Key 安全</strong>：<code>openclaw.json</code> 中的 API Key 是明文存储的。注意文件权限，不要分享或提交到 Git 等代码库。</li>
<li><strong>绑定地址</strong>：Gateway 绑定到 localhost。确保配置中绑定地址是 <code>127.0.0.1</code>（默认已是），<strong>不要改成 `0.0.0.0</strong>` 暴露到公网。</li>
<li><strong>操作确认</strong>：建议在配置中加入 <code>"exec": { "ask": "on" }</code>，让 OpenClaw 执行系统命令前征求您的同意。</li>
<li><strong>运行环境</strong>：不要在存有高度敏感数据的主力设备上盲目运行未知指令，建议使用虚拟机或专用设备跑 Agent。</li>
<li><strong>社区 Skills 审查</strong>：已有恶意 Skills 的报告，安装社区 Skills 前请务必先审查其代码行为。</li>
</ul>
<hr />]]></description>
    <pubDate>Fri, 13 Mar 2026 22:32:00 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/43</guid>
</item>
<item>
    <title>Sora查询视频及保存（Python）</title>
    <link>https://api.jieagi.com/post/41</link>
    <description><![CDATA[<h2>Sora查询视频及保存（异步任务）Python示例；</h2>
<pre><code class="language-python">import requests
import json
import time
import os  # &lt;--- 导入 os 库用于操作文件和文件夹

# --- 1. 填入你在UIUIAPI获取的 API Key ---
API_KEY = "sk-JKzyxxxxxxxxxxxxxxxxxxxxxxxxxx" 

# --- 2. 填入你的 API 主机地址 ("代理地址") ---
API_HOST = "sg.uiuiapi.com" 

# --- 3. 填入你上次提交任务时获得的 任务ID ---
TASK_ID = "video_8087fea9-6e80-435b-b96b-6e47f4071673" # (下次运行时记得换成新的)

# --- 4. 设置轮询间隔 (秒) ---
POLL_INTERVAL = 10 

# --- 5. 设置视频保存的文件夹 ---
# (这个文件夹会自动创建在脚本运行的同一目录下)
SAVE_FOLDER = "video_downloads" 

# 构造 API URL 和请求头
API_URL = f"https://{API_HOST}/v1/videos/{TASK_ID}"
headers = {
    'Authorization': f'Bearer {API_KEY}'
}

# --- 自动下载视频的函数 ---
def download_video(video_url_path, save_path):
    """
    根据相对路径下载视频并保存。
    video_url_path: API 返回的相对路径 (例如 /v1/videos/...)
    save_path: 本地保存的完整路径 (例如 video_downloads/task_id.mp4)
    """
    # 1. 构造完整的下载 URL
    full_download_url = f"https://{API_HOST}{video_url_path}"

    print(f"\n正在下载视频从: {full_download_url}")

    try:
        # 2. 发送下载请求 (使用 stream=True 来处理大文件，防止内存溢出)
        # 注意：下载文件通常也需要同样的 Authorization 头部
        with requests.get(full_download_url, headers=headers, stream=True) as r:
            r.raise_for_status() # 检查下载请求是否成功 (不是 404, 401 等)

            # 3. 确保保存文件夹存在
            # os.path.dirname(save_path) 会获取 "video_downloads"
            os.makedirs(os.path.dirname(save_path), exist_ok=True)

            # 4. 以二进制写入('wb')模式打开文件，并分块写入
            with open(save_path, 'wb') as f:
                for chunk in r.iter_content(chunk_size=8192): # 8KB
                    f.write(chunk)

        print(f"--- 视频已成功保存到: {save_path} ---")

    except requests.exceptions.RequestException as e:
        print(f"!!! 下载视频失败: {e} !!!")
# --- 函数结束 ---

print(f"开始轮询任务: {TASK_ID}")
print(f"查询地址: {API_URL}\n")

try:
    while True:
        response = requests.get(API_URL, headers=headers)

        # 处理临时的服务器错误 (例如 502, 503)
        if response.status_code &gt;= 500:
            print(f"收到服务器错误 {response.status_code}，{POLL_INTERVAL}秒后重试...")
            time.sleep(POLL_INTERVAL)
            continue

        # 处理其他客户端错误 (例如 401, 404, 400)
        response.raise_for_status()

        data = response.json()

        status = data.get("status")
        progress = data.get("progress", 0)

        print(f"[{time.strftime('%H:%M:%S')}] 状态: {status} | 进度: {progress}%")

        # 检查任务是否成功
        if status == "completed" or status == "succeeded":
            print("\n--- 任务成功! ---")
            pretty_json = json.dumps(data, indent=2, ensure_ascii=False)
            print(pretty_json)

            # --- 新增的自动下载逻辑 ---
            video_relative_url = data.get("url")
            if video_relative_url:
                # 构造保存文件名 (我们假设它是 mp4)
                file_name = f"{TASK_ID}.mp4"
                save_file_path = os.path.join(SAVE_FOLDER, file_name)

                # 调用下载函数
                download_video(video_relative_url, save_file_path)
            else:
                print("!!! 任务已完成，但响应中未找到 'url' 字段，无法下载视频。")
            # --- 下载逻辑结束 ---

            break # 退出 while 循环

        # 检查任务是否失败
        elif status == "failed":
            print("\n--- 任务失败! ---")
            pretty_json = json.dumps(data, indent=2, ensure_ascii=False)
            print(pretty_json)
            break # 退出 while 循环

        # 如果任务还在进行中，等待一段时间
        time.sleep(POLL_INTERVAL)

except requests.exceptions.HTTPError as http_err:
    print(f"\nHTTP 错误: {http_err}")
    print(f"响应内容: {response.text}")
except requests.exceptions.RequestException as err:
    print(f"\n请求发生错误: {err}")
except KeyboardInterrupt:
    print("\n用户停止了轮询。")</code></pre>]]></description>
    <pubDate>Mon, 20 Oct 2025 15:15:23 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/41</guid>
</item>
<item>
    <title>Sora2调用 /v1/videos 接口（Python示例）</title>
    <link>https://api.jieagi.com/post/40</link>
    <description><![CDATA[<h2>Sora2官方 /v1/videos 接口（异步任务）</h2>
<ul>
<li>官方文档：<code>https://platform.openai.com/docs/api-reference/videos/create</code></li>
</ul>
<h2>Python 示例</h2>
<pre><code class="language-python">import requests

# --- 1. 填入你在UIUIAPI获取的 API Key ---
API_KEY = "sk-JKzyxxxxxxxxxxxxxxxxxxxxxxxxxx" 

# --- 2. 在这里写入你的【创意提示词】 ---
# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
my_prompt = "A lone protagonist standing on a skyscraper rooftop at sunset, wide shot, cinematic, 2.39:1, 24fps, anamorphic lens, film grain, teal &amp; orange color grading, dramatic rim light, slow dolly in, slight handheld grit"  # &lt;--- 创意内容，不要包含"15s"或"竖屏"
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

# --- 3. 在这里设置你的【技术参数】 ---
video_seconds = "15"      # 视频时长 (s)，对应你的 "15s"

# 视频尺寸/方向，对应 "竖屏"、"横屏"、"高清"
# "1080x1920" = 竖屏, 高清 (HD Vertical)
# "1920x1080" = 横屏, 高清 (HD Horizontal)
# "" (空字符串) = 让 API 自动决定 (默认)
video_size = ""   # &lt;--- 这里设置为了 "竖屏、高清"

# 你的 API 终结点
API_URL = "https://sg.uiuiapi.com/v1/videos"

# 准备请求头
headers = {
    'Authorization': f'Bearer {API_KEY}'
}

# 准备要发送的表单数据
# 我们将把上面的技术参数填入这里
form_data = {
    'model': (None, 'sora-2'),
    'prompt': (None, my_prompt),        # 使用创意提示词
    'seconds': (None, video_seconds),   # 使用 '15'
    'input_reference': (None, ''), 
    'size': (None, video_size)          # 使用 '1080x1920'
}

print(f"正在发送请求到: {API_URL}")
print(f"使用提示词: {my_prompt}")
print(f"设置时长: {video_seconds}s")
print(f"设置尺寸: {video_size}")

try:
    # 发送 POST 请求
    response = requests.post(API_URL, headers=headers, files=form_data)

    # 检查 HTTP 状态码
    response.raise_for_status()

    # 打印成功的响应内容
    print("请求成功，响应内容:")
    print(response.text)

except requests.exceptions.HTTPError as http_err:
    # 捕获 HTTP 错误
    print(f"HTTP 错误: {http_err}")
    print(f"响应内容: {response.text}")
except requests.exceptions.RequestException as err:
    # 捕获其他请求错误
    print(f"请求发生错误: {err}")</code></pre>]]></description>
    <pubDate>Mon, 20 Oct 2025 15:11:11 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/40</guid>
</item>
<item>
    <title>OpenAI 视频格式</title>
    <link>https://api.jieagi.com/post/39</link>
    <description><![CDATA[<h1>OpenAI 视频格式</h1>
<p>调用OpenAI视频生成接口生成视频，支持 Sora 等模型，也支持使用 OpenAI 视频格式调用可灵，即梦和 vidu。</p>
<h2>生成视频</h2>
<h3>API 端点</h3>
<pre><code>POST /v1/videos</code></pre>
<h3>请求头</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>Authorization</td>
<td>string</td>
<td>是</td>
<td>用户认证令牌 (Bearer: sk-xxxx)</td>
</tr>
<tr>
<td>Content-Type</td>
<td>string</td>
<td>是</td>
<td>multipart/form-data</td>
</tr>
</tbody>
</table>
<h3>请求参数</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>prompt</td>
<td>string</td>
<td>是</td>
<td>描述要生成视频的文本提示词</td>
</tr>
<tr>
<td>model</td>
<td>string</td>
<td>否</td>
<td>视频生成模型，默认为 sora-2</td>
</tr>
<tr>
<td>seconds</td>
<td>string</td>
<td>否</td>
<td>视频时长（秒），默认为 4 秒</td>
</tr>
<tr>
<td>size</td>
<td>string</td>
<td>否</td>
<td>输出分辨率，格式为宽度x高度，默认为 720x1280</td>
</tr>
<tr>
<td>input_reference</td>
<td>file</td>
<td>否</td>
<td>可选图片参考，用于指导生成</td>
</tr>
</tbody>
</table>
<h3>请求示例</h3>
<pre><code class="language-bash">curl https://你的uiuiapi服务器地址/v1/videos \
  -H "Authorization: Bearer sk-xxxx" \
  -F "model=sora-2" \
  -F "prompt=A calico cat playing a piano on stage"</code></pre>
<h3>响应格式</h3>
<h4>200 - 成功响应</h4>
<pre><code class="language-json">{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1712697600,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard"
}</code></pre>
<h4>响应字段说明</h4>
<table>
<thead>
<tr>
<th>字段</th>
<th>类型</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>string</td>
<td>视频任务ID</td>
</tr>
<tr>
<td>object</td>
<td>string</td>
<td>对象类型，固定为 &quot;video&quot;</td>
</tr>
<tr>
<td>model</td>
<td>string</td>
<td>使用的模型名称</td>
</tr>
<tr>
<td>status</td>
<td>string</td>
<td>任务状态（queued: 排队中, processing: 处理中, completed: 完成, failed: 失败）</td>
</tr>
<tr>
<td>progress</td>
<td>integer</td>
<td>处理进度（0-100）</td>
</tr>
<tr>
<td>created_at</td>
<td>integer</td>
<td>创建时间戳</td>
</tr>
<tr>
<td>size</td>
<td>string</td>
<td>视频分辨率</td>
</tr>
<tr>
<td>seconds</td>
<td>string</td>
<td>视频时长（秒）</td>
</tr>
<tr>
<td>quality</td>
<td>string</td>
<td>视频质量</td>
</tr>
</tbody>
</table>
<h2>查询视频</h2>
<p>根据任务ID查询视频生成任务的状态和结果</p>
<h3>API 端点</h3>
<pre><code>GET /v1/videos/{video_id}</code></pre>
<h3>路径参数</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>video_id</td>
<td>string</td>
<td>是</td>
<td>视频任务ID</td>
</tr>
</tbody>
</table>
<h3>请求示例</h3>
<pre><code class="language-bash">curl 'https://你的uiuiapi服务器地址/v1/videos/video_123' \
  -H "Authorization: Bearer sk-xxxx"</code></pre>
<h3>响应格式</h3>
<h4>200 - 成功响应</h4>
<pre><code class="language-json">{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "completed",
  "progress": 100,
  "created_at": 1712697600,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard",
  "url": "https://example.com/video.mp4"
}</code></pre>
<h4>响应字段说明</h4>
<table>
<thead>
<tr>
<th>字段</th>
<th>类型</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>string</td>
<td>视频任务ID</td>
</tr>
<tr>
<td>object</td>
<td>string</td>
<td>对象类型，固定为 &quot;video&quot;</td>
</tr>
<tr>
<td>model</td>
<td>string</td>
<td>使用的模型名称</td>
</tr>
<tr>
<td>status</td>
<td>string</td>
<td>任务状态（queued: 排队中, processing: 处理中, completed: 完成, failed: 失败）</td>
</tr>
<tr>
<td>progress</td>
<td>integer</td>
<td>处理进度（0-100）</td>
</tr>
<tr>
<td>created_at</td>
<td>integer</td>
<td>创建时间戳</td>
</tr>
<tr>
<td>size</td>
<td>string</td>
<td>视频分辨率</td>
</tr>
<tr>
<td>seconds</td>
<td>string</td>
<td>视频时长（秒）</td>
</tr>
<tr>
<td>quality</td>
<td>string</td>
<td>视频质量</td>
</tr>
<tr>
<td>url</td>
<td>string</td>
<td>视频下载链接（完成时）</td>
</tr>
</tbody>
</table>
<h2>获取视频任务状态</h2>
<p>根据任务ID获取视频生成任务的详细信息</p>
<h3>API 端点</h3>
<pre><code>GET /v1/videos/{video_id}</code></pre>
<h3>路径参数</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>video_id</td>
<td>string</td>
<td>是</td>
<td>要获取的视频任务标识符</td>
</tr>
</tbody>
</table>
<h3>请求示例</h3>
<pre><code class="language-bash">curl 'https://你的uiuiapi服务器地址/v1/videos/video_123' \
  -H "Authorization: Bearer sk-xxxx"</code></pre>
<h3>响应格式</h3>
<h4>200 - 成功响应</h4>
<pre><code class="language-json">{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "completed",
  "progress": 100,
  "created_at": 1712697600,
  "completed_at": 1712698000,
  "expires_at": 1712784400,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard",
  "remixed_from_video_id": null,
  "error": null
}</code></pre>
<h4>响应字段说明</h4>
<table>
<thead>
<tr>
<th>字段</th>
<th>类型</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>string</td>
<td>视频任务的唯一标识符</td>
</tr>
<tr>
<td>object</td>
<td>string</td>
<td>对象类型，固定为 &quot;video&quot;</td>
</tr>
<tr>
<td>model</td>
<td>string</td>
<td>生成视频的模型名称</td>
</tr>
<tr>
<td>status</td>
<td>string</td>
<td>视频任务的当前生命周期状态</td>
</tr>
<tr>
<td>progress</td>
<td>integer</td>
<td>生成任务的近似完成百分比</td>
</tr>
<tr>
<td>created_at</td>
<td>integer</td>
<td>任务创建时的Unix时间戳（秒）</td>
</tr>
<tr>
<td>completed_at</td>
<td>integer</td>
<td>任务完成时的Unix时间戳（秒），如果已完成</td>
</tr>
<tr>
<td>expires_at</td>
<td>integer</td>
<td>可下载资源过期时的Unix时间戳（秒），如果已设置</td>
</tr>
<tr>
<td>size</td>
<td>string</td>
<td>生成视频的分辨率</td>
</tr>
<tr>
<td>seconds</td>
<td>string</td>
<td>生成视频片段的时长（秒）</td>
</tr>
<tr>
<td>quality</td>
<td>string</td>
<td>视频质量</td>
</tr>
<tr>
<td>remixed_from_video_id</td>
<td>string</td>
<td>如果此视频是混音，则为源视频的标识符</td>
</tr>
<tr>
<td>error</td>
<td>object</td>
<td>如果生成失败，则包含错误信息的对象</td>
</tr>
</tbody>
</table>
<h2>获取视频内容</h2>
<p>下载已完成的视频内容</p>
<h3>API 端点</h3>
<pre><code>GET /v1/videos/{video_id}/content</code></pre>
<h3>路径参数</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>video_id</td>
<td>string</td>
<td>是</td>
<td>要下载的视频标识符</td>
</tr>
</tbody>
</table>
<h3>查询参数</h3>
<table>
<thead>
<tr>
<th>参数</th>
<th>类型</th>
<th>必填</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>variant</td>
<td>string</td>
<td>否</td>
<td>要返回的可下载资源类型，默认为MP4视频</td>
</tr>
</tbody>
</table>
<h3>请求示例</h3>
<pre><code class="language-bash">curl 'https://你的uiuiapi服务器地址/v1/videos/video_123/content' \
  -H "Authorization: Bearer sk-xxxx" \
  -o "video.mp4"</code></pre>
<h3>响应格式</h3>
<h4>200 - 成功响应</h4>
<p>直接返回视频文件流，Content-Type为 <code>video/mp4</code></p>
<h4>响应头说明</h4>
<table>
<thead>
<tr>
<th>字段</th>
<th>类型</th>
<th>描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>Content-Type</td>
<td>string</td>
<td>视频文件类型，通常为 video/mp4</td>
</tr>
<tr>
<td>Content-Length</td>
<td>string</td>
<td>视频文件大小（字节）</td>
</tr>
<tr>
<td>Content-Disposition</td>
<td>string</td>
<td>文件下载信息</td>
</tr>
</tbody>
</table>
<h2>错误响应</h2>
<h3>400 - 请求参数错误</h3>
<pre><code class="language-json">{
  "error": {
    "message": "Invalid request parameters",
    "type": "invalid_request_error",
    "code": "invalid_parameter"
  }
}</code></pre>
<h3>401 - 未授权</h3>
<pre><code class="language-json">{
  "error": {
    "message": "Invalid API key",
    "type": "authentication_error",
    "code": "invalid_api_key"
  }
}</code></pre>
<h3>403 - 无权限</h3>
<pre><code class="language-json">{
  "error": {
    "message": "Insufficient permissions",
    "type": "permission_error",
    "code": "insufficient_permissions"
  }
}</code></pre>
<h3>429 - 请求频率限制</h3>
<pre><code class="language-json">{
  "error": {
    "message": "Rate limit exceeded",
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded"
  }
}</code></pre>
<h3>500 - 服务器内部错误</h3>
<pre><code class="language-json">{
  "error": {
    "message": "Internal server error",
    "type": "server_error",
    "code": "internal_error"
  }
}</code></pre>]]></description>
    <pubDate>Mon, 20 Oct 2025 15:07:04 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/post/39</guid>
</item>
<item>
    <title>【OpenAI】TTS文本转语音Python脚本</title>
    <link>https://api.jieagi.com/openai-tts</link>
    <description><![CDATA[<p>下面是一份较全面、实用的 OpenAI 文本转语音（TTS）Python脚本示例</p>
<h2>一、功能概览</h2>
<ul>
<li>作用：将输入的文字即时合成自然语音，可用于旁白、语音播报、对话型产品的发声等。</li>
<li>特点：延迟低、可多语言、提供多种预设音色（voices），可输出多种音频格式，支持流式播放。</li>
<li>典型延迟：短句通常在数百毫秒到约 1–2 秒内即可得到可播放的音频；与网络状况、模型与格式有关。</li>
</ul>
<h2>二、可用模型与差异</h2>
<ul>
<li>gpt-4o-mini-tts（推荐默认）：速度快、性价比高，适合绝大多数实时与批量场景。</li>
<li>tts-1：早期通用 TTS 模型，质量与速度均衡。</li>
<li>tts-1-hd：更高音质版本，适合对音频保真度要求更高、对延迟不太敏感的长内容旁白。<br />
提示：若追求最低延迟与成本，优先 gpt-4o-mini-tts；若追求极致音质，可尝试 tts-1-hd。老的 tts-1/tts-1-hd 仍可用，但官方通常建议新项目优先采用 gpt-4o-mini-tts。</li>
</ul>
<h2>三、获取与安全使用 API Key（两种连通方式）</h2>
<p>好的，这段文案的目标是引导用户选择“方式B”，同时显得客观、有说服力。我们可以从标题、结构、措辞和用户心理等角度进行优化。</p>
<p><strong>获取 OpenAI tts-1 API KEY？看这两种方式就够了</strong></p>
<ul>
<li>
<p><strong>方案A：官方渠道</strong></p>
<ul>
<li><strong>特点：</strong> 流程繁琐，对网络环境有特殊要求，新手容易在注册和使用中遇到障碍。</li>
<li><strong>适合：</strong> 熟悉海外服务注册流程，且网络条件好的资深用户。</li>
</ul>
</li>
<li>
<p><strong>方案B：国内加速 (为开发者便捷调用)</strong></p>
<ul>
<li><strong>特点：</strong> 借助专业中转服务 (如 <code>uiuiapi.com</code>)，连接稳定、速度快、开通简单，即刻上手。</li>
<li><strong>适合：</strong> 追求稳定高效，希望快速开始使用的所有开发者，也是众多资深用户的选择。</li>
</ul>
</li>
</ul>
<h2>如何调用（概览）</h2>
<h3>第一步：使用 <code>.env</code> 文件安全管理 API 密钥</h3>
<p>专业的开发实践严禁将密钥、密码等敏感信息直接写入代码。最佳实践是使用环境变量来管理它们。<code>dotenv</code> 文件是本地开发中最流行的方式。</p>
<p><strong>1. 安装 <code>python-dotenv</code> 库</strong></p>
<pre><code class="language-bash">pip install python-dotenv</code></pre>
<p><strong>2. 创建 <code>.env</code> 文件</strong><br />
在您的项目根目录下（与 Python 脚本同级），创建一个名为 <code>.env</code> 的文件。在里面定义您的密钥。我们使用 <code>UIUIAPI_API_KEY</code> 这个清晰的变量名。</p>
<p><strong>.env 文件内容：</strong></p>
<pre><code># 这是环境变量文件，用于存放敏感信息
# UIUIAPI_API_KEY，输入你在uiuiapi.com或者OpenAI官方的KEY
UIUIAPI_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"</code></pre>
<h3>第二步：参数化与模型选择</h3>
<p>一个好的脚本应该是灵活的。TTS API 通常提供多种语音模型供选择。我们可以将输入文本和语音模型作为参数，方便调用。</p>
<p>以 OpenAI 的 TTS 模型为例，它提供了 6 种高质量的声音：</p>
<ul>
<li><strong><code>alloy</code></strong> (均衡男声)</li>
<li><strong><code>echo</code></strong> (温暖男声)</li>
<li><strong><code>fable</code></strong> (沉稳男声)</li>
<li><strong><code>onyx</code></strong> (深沉男声)</li>
<li><strong><code>nova</code></strong> (活泼女声)</li>
<li><strong><code>shimmer</code></strong> (专业女声)</li>
</ul>
<p>我们可以在代码中轻松切换它们：</p>
<pre><code class="language-python"># 要转换的文本
input_text = "你好，世界！提笔写下这句简单的问候，我带着好奇、敬意与希望。"

# 选择一个声音
selected_voice = "nova"

# 构造请求数据
data = {
    "model": "tts-1",
    "input": input_text,
    "voice": selected_voice
}</code></pre>
<h3>最终版本：专业级的 TTS API 调用脚本</h3>
<p>结合以上所有最佳实践，我们得到最终的 Python 脚本。它安全、健壮、灵活且易于维护。</p>
<pre><code class="language-python">import os
import requests
from dotenv import load_dotenv

def generate_speech(text: str, voice: str = "alloy", output_filename: str = "speech.mp3"):
    """
    调用文本转语音 API 生成音频文件。

    Args:
        text (str): 需要转换为语音的文本。
        voice (str): 使用的语音模型名称。
        output_filename (str): 输出的音频文件名。
    """
    # --- 1. 加载并验证配置 ---
    load_dotenv()
    api_key = os.environ.get("UIUIAPI_API_KEY")
    if not api_key:
        raise ValueError("未找到 API 密钥。请确保在 .env 文件中正确设置了 'UIUIAPI_API_KEY'")

    url = "https://sg.uiuiapi.com/v1/audio/speech"

    # --- 2. 准备请求数据 ---
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    }
    data = {
        "model": "tts-1-hd",
        "input": text,
        "voice": voice
    }

    # --- 3. 发送请求并处理响应 ---
    try:
        print(f"正在使用声音 '{voice}' 生成语音...")
        # 使用 stream=True 进行流式下载
        response = requests.post(url, headers=headers, json=data, stream=True)

        # 检查 HTTP 响应状态码，如果不是 2xx，则抛出异常
        response.raise_for_status()

        print(f"请求成功，正在将音频写入文件: {output_filename}")

        # 以二进制块的方式写入文件，适用于大文件
        with open(output_filename, 'wb') as f:
            for chunk in response.iter_content(chunk_size=8192):
                f.write(chunk)

        print(f"音频文件已成功保存！")

    except requests.exceptions.HTTPError as e:
        # 捕获并打印更详细的 HTTP 错误信息（如 401, 404, 500 等）
        print(f"请求失败，HTTP 错误: {e}")
        print(f"响应内容: {response.text}")
    except requests.exceptions.RequestException as e:
        # 捕获网络或连接错误
        print(f"请求失败，网络或连接错误: {e}")
    except Exception as e:
        # 捕获其他未知错误
        print(f"发生未知错误: {e}")

if __name__ == '__main__':
    # --- 使用示例 ---
    long_text = "你好，世界！提笔写下这句简单的问候，我带着好奇、敬意与希望：无论经纬如何交错，我们共享同一片天空与明月。我愿倾听你每个角落的故事，珍视差异，守护脆弱的美好。"

    # 使用活泼的女声 'nova'
    generate_speech(long_text, voice="nova", output_filename="speech_nova.mp3")

    # 使用深沉的男声 'onyx'
    generate_speech("欢迎体验我们的文本转语音服务。", voice="onyx", output_filename="speech_onyx.mp3")</code></pre>
<p><strong>界智通（jieagi）总结流程：</strong></p>
<ul>
<li>1.创建文件夹例如：<code>openaitts</code></li>
<li>2.在<code>openaitts</code>文件夹目录下创建 <code>.env</code> 文件存放秘钥。</li>
<li>3.在<code>openaitts</code>文件夹目录下Python 脚本的文件，例如：<code>openai-tts.py</code> 把Python 脚本放进你创建的文件。</li>
</ul>
<p><strong>完成步骤运行你的脚本文件。</strong></p>
<p><img src="https://www.jieagi.com/content/uploadfile/202508/8f771756030712.png" alt="" /></p>
<p>我们从一个简单的 <code>curl</code> 命令出发，通过引入 <code>requests</code> 库、使用 <code>.env</code> 文件保护密钥、参数化 API 调用以及构建健壮的错误处理，最终完成了一个专业级的 Python 脚本。</p>
<p>这个过程体现了从“能用”到“好用”的软件工程思维。您可以基于此脚本，进一步将其封装成类，或者构建一个命令行工具（CLI），甚至集成到大型 Web 应用中，为您的项目赋予强大的语音能力。</p>]]></description>
    <pubDate>Sun, 24 Aug 2025 17:30:10 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/openai-tts</guid>
</item>
<item>
    <title>Cursor - AI编程工具接入uiuiAPI聚合平台图文教程</title>
    <link>https://api.jieagi.com/cursor</link>
    <description><![CDATA[<h3>(1) Cursor简要</h3>
<ul>
<li>Cursor 是一类以大语言模型（LLM）为核心、面向开发者的交互式编码 IDE/助理工具。它把自然语言对话、代码理解、即时运行与编辑器/终端集成在一起，帮助开发者更快地阅读、生成、重构、调试代码与编写测试等。</li>
</ul>
<h3>(2) 接入uiuiAPI聚合平台教程</h3>
<h4>点开Models进行，在APIKeys点开，选择OpenAI APIKey进行配置KEY和设置uiuiAPI连接地址：</h4>
<p><img src="https://api.jieagi.com/content/uploadfile/202508/f3231755528317.jpg" alt="" /></p>
<h4>模型设置和添加模型</h4>
<p><img src="https://api.jieagi.com/content/uploadfile/202508/a5f31755528341.jpg" alt="" /><br />
<img src="https://api.jieagi.com/content/uploadfile/202508/f2b91755528542.png" alt="" /></p>
<h4>开始使用</h4>
<p><img src="https://api.jieagi.com/content/uploadfile/202508/2dd21755528582.jpg" alt="" /></p>
<h3>常见问题</h3>
<ul>
<li>对话框连接失败有可能你是国内用户网络导致，<code>Cursor工具对国内网络有限制</code>，如有提示网络问题请打开梯子工具使用<code>Cursor工具</code>。</li>
</ul>]]></description>
    <pubDate>Mon, 18 Aug 2025 22:42:10 +0800</pubDate>
    <dc:creator>emer</dc:creator>
    <guid>https://api.jieagi.com/cursor</guid>
</item>
</channel>
</rss>