Аутентификация и настройка моделей Pi Agent

Pi Agent поддерживает два метода аутентификации: вход по подписке и API Key. В этой главе подробно описано, как настроить Pi Agent для подключения к моделям ИИ.


Обзор методов аутентификации

Метод аутентификацииКак использоватьПрименимый сценарий
Вход по подписке (OAuth)Запустите /login после запуска piУже есть подписки Claude Pro/Max, ChatGPT Plus/Pro, GitHub Copilot и т. д.
Переменная окружения API-ключаУстановите переменную окружения, затем запустите piЕсть API-ключ, и вы хотите сохранить его в конфигурации оболочки
Файл учётных данных API-ключаВыберите провайдера API-ключа для хранения через /loginЕсть API-ключ, и вы хотите, чтобы Pi Agent управлял им централизованно

Способ 1: вход по подписке (рекомендуется)

Если у вас уже есть подписка на Claude Pro/Max, ChatGPT Plus/Pro или GitHub Copilot, это самый удобный способ.

После запуска Pi Agent введите следующую команду:

/login

Затем выберите своего провайдера подписки в появившемся меню:

ProviderТребованиеОписание
Claude Pro/MaxАккаунт подписки AnthropicТарифицируется как дополнительное использование, не расходует квоту плана
ChatGPT Plus/Pro (Codex)Подписка OpenAI Plus или ProOpenAI официально признала Codex для OSS
GitHub CopilotПодписка GitHub CopilotПоддерживает github.com и корпоративные серверы
xAI (Grok)Подписка X PremiumИспользует модель Grok
OpenRouterАккаунт OpenRouterOAuth создаёт API Key, расходы списываются с баланса

В режиме аутентификации по подписке Claude Pro/Max Pi Agent использует дополнительное использование, тарифицируется за токен и не учитывается в квоте вашего плана Claude. Вы можете проверить это внастройках использования Claude.

После завершения входа учётные данные сохраняются в~/.pi/agent/auth.json, и Pi Agent будет автоматически использовать их при последующих запусках.

Для выхода из системы используйте:

/logout

Метод 2: переменная окружения API-ключа

Если у вас есть API-ключ, вы можете задать переменную окружения перед запуском Pi Agent:

# 设置 Anthropic API Key
export ANTHROPIC_API_KEY=sk-ant-api03-your-key-here

# 启动 Pi Agent
pi

Pi Agent поддерживает переменные окружения API-ключа для следующих основных провайдеров:

ProviderПеременная окруженияИмя ключа auth.json
AnthropicANTHROPIC_API_KEYanthropic
OpenAIOPENAI_API_KEYopenai
Google GeminiGEMINI_API_KEYgoogle
DeepSeekDEEPSEEK_API_KEYdeepseek
GroqGROQ_API_KEYgroq
MistralMISTRAL_API_KEYmistral
xAIXAI_API_KEYxai
OpenRouterOPENROUTER_API_KEYopenrouter

Настройка провайдера DeepSeek

Pi поддерживает пользовательских провайдеров через models.json. Расположение файла конфигурации:

  • Linux / macOS:~/.pi/agent/models.json
  • Windows:%USERPROFILE%\.pi\agent\models.json

Сначала получите API-ключ на платформе DeepSeek Open Platform:https://platform.deepseek.com/api_keys。

{
  "providers": {
    "deepseek": {
      "baseUrl": "https://api.deepseek.com",
      "api": "openai-completions",
      "apiKey": "$DEEPSEEK_API_KEY",
      "models": [
        {
          "id": "deepseek-v4-pro",
          "name": "DeepSeek V4 Pro",
          "contextWindow": 1000000,
          "maxTokens": 384000,
          "input": ["text"],
          "reasoning": true,
          "cost": {
            "input": 1.74,
            "output": 3.48,
            "cacheRead": 0.145,
            "cacheWrite": 0
          },
          "compat": {
            "requiresReasoningContentOnAssistantMessages": true,
            "thinkingFormat": "deepseek",
            "reasoningEffortMap": {
              "minimal": "high",
              "low": "high",
              "medium": "high",
              "high": "high",
              "xhigh": "max"
            }
          }
        },
        {
          "id": "deepseek-v4-flash",
          "name": "DeepSeek V4 Flash",
          "contextWindow": 1000000,
          "maxTokens": 384000,
          "input": ["text"],
          "reasoning": true,
          "cost": {
            "input": 0.14,
            "output": 0.28,
            "cacheRead": 0.028,
            "cacheWrite": 0
          },
          "compat": {
            "requiresReasoningContentOnAssistantMessages": true,
            "thinkingFormat": "deepseek",
            "reasoningEffortMap": {
              "minimal": "high",
              "low": "high",
              "medium": "high",
              "high": "high",
              "xhigh": "max"
            }
          }
        }
      ]
    }
  }
}

Задайте переменную окружения:

Пользователи Linux / Mac:

export DEEPSEEK_API_KEY="<你的 DeepSeek API Key>"

Пользователи Windows:

$env:DEEPSEEK_API_KEY="<你的 DeepSeek API Key>"

Перейдите в каталог проекта и выполните команду pi:

cd /path/to/my-project
pi

Если вы не хотите каждый раз вручную задавать переменную окружения, можно записать команду export в файл конфигурации вашей оболочки (например, ~/.zshrc или ~/.bashrc), чтобы сделать её постоянной.


Метод 3: файл учётных данных API-ключа

Вы также можете использовать команду /login, чтобы выбрать провайдера API-ключа для сохранения учётных данных.

Место хранения —~/.pi/agent/auth.json, со следующим форматом:

{
  "anthropic": { "type": "api_key", "key": "sk-ant-api03-your-key" },
  "openai": { "type": "api_key", "key": "sk-your-openai-key" },
  "deepseek": { "type": "api_key", "key": "sk-your-deepseek-key" }
}

Файл учётных данных автоматически устанавливается в0600permissions (доступен для чтения и записи только пользователю), что обеспечивает базовый уровень безопасности.


Порядок разрешения учетных данных

Когда Pi Agent нужно получить ключ API, он выполняет поиск в следующем порядке приоритета:

  1. Параметр CLI --api-key (наивысший приоритет)
  2. Учётные данные в файле auth.json
  3. Переменные среды
  4. Ключ от пользовательского провайдера в models.json

Pi Agent 凭证解析优先级链

Иными словами, если вы зададите и переменную среды, и auth.json, значение в auth.json имеет приоритет.


Расширенные возможности auth.json

auth.json поддерживает не только хранение ключей в открытом виде, но и следующие расширенные варианты использования:

Получение ключа из командной строки

Используйте!префикс для выполнения команды получения ключа; подходит для чтения из менеджера паролей:

{
  "anthropic": {
    "type": "api_key",
    "key": "!security find-generic-password -ws 'anthropic-api-key'"
  },
  "openai": {
    "type": "api_key",
    "key": "!op read 'op://vault/item/credential'"
  }
}

В примере выше показано, как получить ключ из macOS Keychain и 1Password CLI.

Подстановка переменных среды

Используйте$префикс для ссылки на переменные среды:

{
  "anthropic": {
    "type": "api_key",
    "key": "$MY_ANTHROPIC_KEY"
  }
}

Переключение моделей

После настройки аутентификации вы можете в любой момент переключить используемую модель ИИ:

В интерактивном режиме используйте команду/modelили нажмитеCtrl+L, чтобы открыть селектор моделей.

ИспользуйтеCtrl+P / Shift+Ctrl+Pдля переключения между настроенными моделями.

Укажите модель из командной строки:

# 指定提供商和模型
$ pi --provider anthropic --model claude-sonnet-4-20250514

# 使用 provider/model 格式
$ pi --model openai/gpt-4o "帮我重构这段代码"

# 指定推理等级(thinking level)
$ pi --model sonnet:high "解决这个复杂问题"

Уровень мышления определяет, насколько глубоко модель размышляет перед ответом. Уровни варьируются от выключенного до максимального. Более глубокое мышление может давать более качественные ответы, но потребляет больше токенов.

Уровень мышленияОписаниеПрименимый сценарий
offНе показывает процесс рассужденийПростые вопросы и ответы, форматирование кода
минимальныйМинимальный уровень рассужденийБазовые задачи программирования
lowНизкий уровень рассужденийОбщие задачи программирования
среднийСредний уровень рассуждений (рекомендуется по умолчанию)Ежедневные задачи разработки
высокийВысокий уровень рассужденийПроектирование сложной архитектуры, отладка
xhighСверхвысокий уровень рассужденийСложные алгоритмические задачи
maxМаксимальный уровень рассужденийЧрезвычайно сложный логический анализ

Цвет рамки редактора меняется в зависимости от уровня мышления, позволяя интуитивно видеть текущую глубину рассуждений.

Другие расширения