Pi coding agent'i paigaldamine

Pi coding agent'i veebileht asub aadressil https://pi.dev/.

nvm (Node Version Manager) haldab kasutaja Node.js-i versioone. npm (Node Package Manager) paigaldab Node.js-i pakette, sealhulgas Pi coding agent'i.

1. Node.js-i ja npm-i paigaldamine nvm-i abil

Kui kasutajal puuduvad root-õigused ning arvutis pole Node.js-i ega npm-i, saab need kohaliku kasutaja jaoks paigaldada nvm-i abil.

nvm-i paigaldamine

curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
source ~/.bashrc
nvm --version

Zsh kasutamisel laadida selle asemel fail ~/.zshrc:

source ~/.zshrc

Alternatiivina võib terminali sulgeda ja uuesti avada.

Node.js-i paigaldamine

Paigaldada Node.js-i LTS-versioon. Node.js-iga paigaldatakse automaatselt ka npm.

nvm install --lts
node --version
npm --version

Pi vajab Node.js-i versiooni 22.19.0 või uuemat.

2. Pi paigaldamine

npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pi --version

Pi hilisemaks uuendamiseks kasutada käsku:

pi update

Paigaldatud laienduste uuendamiseks kasutada käsku:

pi update --extensions

Alternatiivne paigaldusviis

Pi saab paigaldada ka ametliku paigaldusskripti abil:

curl -fsSL https://pi.dev/install.sh | sh

3. API-võtme loomine

Luua API-võti aadressil https://ai-proxy.cm.itcollege.ee/ ja hoida seda turvalises kohas.

API-võtit ei tohi lisada avalikku dokumentatsiooni ega versioonihaldusse. Turvalisem on kasutada keskkonnamuutujat, mitte kirjutada API-võti otse faili models.json.

Määrata API-võti keskkonnamuutujana:

export TALTECH_API_KEY='siia-teie-API-võti'

Püsivaks kasutamiseks võib selle rea lisada sobivasse shell'i konfiguratsioonifaili, näiteks ~/.bashrc või ~/.zshrc. Konfiguratsioonifaili õigused peavad olema piiratud.

4. Mudeli seadistamine

Mudeli nime kontrollimine

Enne seadistusfaili loomist kontrollida AI-proxyst mudelite täpsed nimed, sest saadaolevate mudelite nimekiri võib muutuda. Mõlema provideri mudeliloendit saab kontrollida järgmiste käskudega:

curl -sS \
  -H "Authorization: Bearer $TALTECH_API_KEY" \
  https://ai-proxy.cm.itcollege.ee/vllm/v1/models

curl -sS \
  -H "Authorization: Bearer $TALTECH_API_KEY" \
  https://ai-proxy.cm.itcollege.ee/hpcvllm/v1/models

Leitud mudelite identifikaatorid tuleb kopeerida faili models.json väljadele id. Allolevas näites jäävad valikusse nii vllm provider mudeliga cyankiwi/Qwen3.6-27B-AWQ-BF16-INT4 kui ka hpc-vllm provider mudeliga Qwen3.8-27B.

Luua Pi seadistuste kataloog:

mkdir -p ~/.pi/agent
chmod 700 ~/.pi/agent

Luua fail ~/.pi/agent/models.json järgmise sisuga:

{
  "providers": {
    "vllm": {
      "baseUrl": "https://ai-proxy.cm.itcollege.ee/vllm/v1",
      "api": "openai-completions",
      "apiKey": "$TALTECH_API_KEY",
      "compat": {
        "supportsUsageInStreaming": true,
        "maxTokensField": "max_tokens",
        "supportsDeveloperRole": false
      },
      "models": [
        {
          "id": "cyankiwi/Qwen3.6-27B-AWQ-BF16-INT4",
          "reasoning": true,
          "contextWindow": 262144,
          "input": [
            "text",
            "image"
          ]
        }
      ]
    },
    "hpc-vllm": {
      "baseUrl": "https://ai-proxy.cm.itcollege.ee/hpcvllm/v1",
      "api": "openai-completions",
      "apiKey": "$TALTECH_API_KEY",
      "compat": {
        "supportsUsageInStreaming": true,
        "maxTokensField": "max_tokens",
        "supportsDeveloperRole": false
      },
      "models": [
        {
          "id": "Qwen3.8-27B",
          "reasoning": true,
          "contextWindow": 262144,
          "thinkingLevelMap": {
            "minimal": null,
            "low": "low",
            "medium": "medium",
            "high": null,
            "xhigh": "xhigh",
            "max": null
          },
          "compat": {
            "thinkingFormat": "chat-template",
            "chatTemplateKwargs": {
              "enable_thinking": { "$var": "thinking.enabled" },
              "reasoning_effort": { "$var": "thinking.effort", "omitWhenOff": true }
            }
          },
          "input": [
            "text",
            "image"
          ]
        }
      ]
    }
  }
}

HPC-vLLM-i mudeli mõtlemistasemetest on kasutatavad low, medium ja xhigh. Väärtusega null tähistatud tasemeid mudelivalikus ei pakuta.

Piirata seadistusfaili ligipääsuõigusi:

chmod 600 ~/.pi/agent/models.json

5. Mudelite kontrollimine ja valimine

Kontrollida, kas Pi leiab mõlemad seadistatud mudelid:

pi --list-models Qwen3.6
pi --list-models Qwen3.8

Pi interaktiivses kasutajaliideses saab mudeli valida käsuga /model või klahvikombinatsiooniga Ctrl+L. Valikusse jäävad mõlema provideri mudelid.

VLLM-i mudeli saab valida Pi käivitamisel nii:

pi --model vllm/cyankiwi/Qwen3.6-27B-AWQ-BF16-INT4

HPC-vLLM-i mudeli saab valida nii:

pi --model hpc-vllm/Qwen3.8-27B