Страница 1 из 1

pi

Добавлено: 03 окт 2026, 04:29
ya
Спасибо, теперь я вижу, что **Pi — это минимальный agent harness (каркас агента)**, поддерживающий 15+ провайдеров, включая **Ollama** для локальных моделей. Нужна документация по конфигурации профилей.
Отлично! Нашёл информацию про профили. Теперь вижу, что есть пакет **pi-profiles** для управления профилями. Давайте получим ещё информацию о локальных моделях и настройке Ollama.
Теперь я понимаю полную картину. Вот решение вашей проблемы:

## Использование локальной модели в Pi на Debian

**Ошибка "профиль не создан"** указывает на то, что пи ещё не инициализирована. Вот пошаговое решение:

### 1. **Установите Pi**

На Debian запустите:

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

Или через npm (требует Node.js 22.19+):

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

Проверьте установку:

```bash
pi --version
```

### 2. **Инициализируйте конфигурацию (создайте профиль)**

Перейдите в папку, где хотите работать, и запустите Pi:

```bash
cd ~/my-project
pi
```

При первом запуске Pi автоматически создаст конфигурационную директорию `~/.pi/agent/` с необходимыми файлами (в том числе `settings.json` и `auth.json`).

### 3. **Настройте локальную модель через `models.json`**

Если вы используете **Ollama**, отредактируйте файл `~/.pi/agent/models.json`:

```bash
nano ~/.pi/agent/models.json
```

Добавьте конфигурацию для Ollama:

```json
{
"providers": {
"ollama": {
"baseUrl": "http://localhost:11434/v1",
"api": "openai-completions",
"apiKey": "ollama",
"models": [
{ "id": "mistral:latest" },
{ "id": "neural-chat:latest" }
]
}
}
}
```

Замените `mistral:latest` и `neural-chat:latest` на модели, которые вы хотите использовать.

### 4. **Убедитесь, что Ollama запущена**

На Debian запустите Ollama:

```bash
ollama serve
```

Или проверьте, что сервис работает:

```bash
curl http://localhost:11434/api/tags
```

### 5. **Выберите модель в Pi**

Откройте Pi и введите команду:

```
/model
```

Нажимайте стрелки вверх/вниз, чтобы найти вашу модель Ollama, затем нажмите `Enter`.

---

## Альтернатива: pi-profiles (для управления несколькими профилями)

Если позже вам понадобятся **несколько независимых профилей** (например, для разных проектов с разными моделями), установите **pi-profiles**:

```bash
npm install -g pi-profiles
```

Создайте профиль:

```bash
ppi create work --own-auth
ppi use work
```

Это создаст отдельную конфигурацию в `~/.pi/profiles/work/`.

---

## Файлы конфигурации

| Файл | Назначение |
|------|-----------|
| `~/.pi/agent/settings.json` | Общие настройки (тема, модель по умолчанию) |
| `~/.pi/agent/auth.json` | Сохранённые учётные данные провайдеров |
| `~/.pi/agent/models.json` | Кастомная конфигурация моделей (Ollama, LM Studio и т.д.) |
| `~/.pi/agent/sessions/` | Сохранённые сессии |

---

Когда вы запустите Pi в следующий раз, профиль уже будет создан, и вы сможете использовать локальную модель. Какую именно локальную модель вы хотите использовать — Ollama, llama.cpp или что-то ещё?

Re: pi

Добавлено: 03 окт 2026, 04:29
ya
Судя по документации и обсуждениям в сообществе `pi.dev`, проблема с «несозданным профилем» или отсутствием конфигурации при использовании локальных моделей на Debian (и Linux в целом) чаще всего связана с тем, что инструмент не создает необходимые файлы конфигурации автоматически при первом запуске.

Вот пошаговая инструкция, как заставить это работать:

### 1. Понимание причины
Ошибка «профиль не создан» может относиться к двум вещам:
* **Базовая конфигурация моделей:** Pi не создает файл `models.json` в папке настроек по умолчанию. Без него он «не знает», как подключиться к вашему локальному серверу (например, Ollama).
* **Расширение `pi-profile`:** Если вы установили пакет `pi-profile` для переключения ролей (researcher, coder и т.д.), он требует наличия JSON-файлов в папке `~/.pi/profiles/`.

### 2. Настройка локальной модели (Ollama и др.)
Если вы хотите использовать локальный LLM, вам нужно вручную создать или отредактировать конфигурацию провайдеров.

1. Перейдите в директорию настроек: `cd ~/.pi/agent/` (или `~/.pi/` в зависимости от версии).
2. Найдите или создайте файл **`models.json`**.
3. Добавьте туда настройки вашего локального провайдера. Для Ollama это обычно выглядит так (упрощенно):
```json
{
"providers": {
"ollama": {
"endpoint": "http://localhost:11434/v1",
"api_key": "ollama"
}
},
"models": {
"local-model": {
"provider": "ollama",
"model": "llama3"
}
}
}
```
*(Замените `llama3` на имя модели, которую вы скачали в Ollama)*.

### 3. Решение проблемы с профилями (`pi-profile`)
Если вы используете расширение `pi-profile` и видите ошибку профиля:

1. **Установите расширение** (если еще не сделали):
```bash
pi install npm:pi-profile
```
2. **Создайте папку для профилей**, так как она не создается автоматически:
```bash
mkdir -p ~/.pi/profiles/
```
3. **Создайте ваш первый профиль**. Вы можете сделать это интерактивно внутри Pi:
- Запустите `pi`.
- Введите команду `/profile create`. Следуйте инструкциям ИИ для создания профиля.
- Или создайте файл вручную: `~/.pi/profiles/default.json` с описанием модели и системного промпта.

### 4. Запуск и проверка
После создания файлов:
1. Запустите Pi в нужной папке проекта: `pi`.
2. Выберите вашу локальную модель командой `/model`.
3. Если используете профиль: `/profile default`.

**Краткий итог для Debian:**
Если Pi «жалуется», что чего-то нет — скорее всего, он просто не создал папку или JSON-файл в `~/.pi/`. Создайте их вручную:
- Конфиг моделей $\rightarrow$ `~/.pi/agent/models.json`
- Профили $\rightarrow$ `~/.pi/profiles/<имя>.json`

Re: pi

Добавлено: 03 окт 2026, 04:39
ya
Ваша проблема больше не связана с профилем — теперь это **конфликт расширений**.

Ошибка прямо говорит: `Tool "web_search" conflicts`. У вас установлены два разных расширения для поиска в сети (`@ollama/pi-web-search` и `pi-web-access`), и оба они пытаются зарегистрировать инструмент с одинаковым названием `web_search`. Pi не может запустить два разных инструмента с одним именем.

### Как это исправить (3 способа):

#### Способ 1: Быстрый запуск без расширений (для проверки)
Если вам нужно просто запустить Pi прямо сейчас, используйте флаг, который предложила сама программа:
```bash
pi -ne
```
Это запустит Pi в «чистом» режиме без загрузки всех плагинов.

#### Способ 2: Удаление конфликтующего расширения (рекомендуется)
Вам нужно оставить только один инструмент поиска. Скорее всего, `@ollama/pi-web-search` и `pi-web-access` делают одно и то же. Лучше оставить один из них.

Попробуйте удалить одно из них через терминал:
```bash
pi uninstall npm:@ollama/pi-web-search
```
Или, если хотите оставить поиск от Ollama:
```bash
pi uninstall npm:pi-web-access
```
После этого попробуйте запустить `pi` снова.

#### Способ 3: Ручная очистка (если `uninstall` не сработал)
Если команда `uninstall` выдает ошибку, удалите папку с модулем вручную:
1. Перейдите в папку расширений:
```bash
cd /home/gt/.pi/agent/npm/node_modules/
```
2. Удалите одну из конфликтующих папок:
```bash
rm -rf @ollama/pi-web-search
# ИЛИ
rm -rf pi-web-access
```

### Почему это произошло?
Вы, вероятно, устанавливали разные пакеты для обеспечения доступа ИИ к интернету. В архитектуре Pi каждый плагин регистрирует свои "инструменты" (tools). Когда два плагина говорят: «Я теперь отвечаю за функцию `web_search`», возникает критический сбой при запуске.

**После того как решите конфликт расширений**, возвращайтесь к выбору модели в меню (где вы видите `sysadmin:latest`), и Pi должен запуститься нормально.

Re: pi

Добавлено: 03 окт 2026, 04:39
ya
Ваша проблема больше не связана с профилем — теперь это **конфликт расширений**.

Ошибка прямо говорит: `Tool "web_search" conflicts`. У вас установлены два разных расширения для поиска в сети (`@ollama/pi-web-search` и `pi-web-access`), и оба они пытаются зарегистрировать инструмент с одинаковым названием `web_search`. Pi не может запустить два разных инструмента с одним именем.

### Как это исправить (3 способа):

#### Способ 1: Быстрый запуск без расширений (для проверки)
Если вам нужно просто запустить Pi прямо сейчас, используйте флаг, который предложила сама программа:
```bash
pi -ne
```
Это запустит Pi в «чистом» режиме без загрузки всех плагинов.

#### Способ 2: Удаление конфликтующего расширения (рекомендуется)
Вам нужно оставить только один инструмент поиска. Скорее всего, `@ollama/pi-web-search` и `pi-web-access` делают одно и то же. Лучше оставить один из них.

Попробуйте удалить одно из них через терминал:
```bash
pi uninstall npm:@ollama/pi-web-search
```
Или, если хотите оставить поиск от Ollama:
```bash
pi uninstall npm:pi-web-access
```
После этого попробуйте запустить `pi` снова.

#### Способ 3: Ручная очистка (если `uninstall` не сработал)
Если команда `uninstall` выдает ошибку, удалите папку с модулем вручную:
1. Перейдите в папку расширений:
```bash
cd /home/gt/.pi/agent/npm/node_modules/
```
2. Удалите одну из конфликтующих папок:
```bash
rm -rf @ollama/pi-web-search
# ИЛИ
rm -rf pi-web-access
```

### Почему это произошло?
Вы, вероятно, устанавливали разные пакеты для обеспечения доступа ИИ к интернету. В архитектуре Pi каждый плагин регистрирует свои "инструменты" (tools). Когда два плагина говорят: «Я теперь отвечаю за функцию `web_search`», возникает критический сбой при запуске.

**После того как решите конфликт расширений**, возвращайтесь к выбору модели в меню (где вы видите `sysadmin:latest`), и Pi должен запуститься нормально.

Re: pi

Добавлено: 03 окт 2026, 04:40
ya
Судя по логам, происходит «зацикливание»: при каждом запуске Pi пытается автоматически установить `@ollama/pi-web-search`, который тут же вступает в конфликт с уже установленным `pi-web-access`.

Вы пытаетесь запустить Pi через **меню выбора (Ollama menu)**, и этот скрипт запуска, вероятно, прописан так, что он принудительно устанавливает пакет поиска перед стартом.

### Решение: Полная очистка конфликтующего модуля

Так как автоматика продолжает устанавливать конфликтный пакет, самый надежный способ — удалить `pi-web-access` полностью, чтобы оставить только тот поиск, который Pi хочет установить сам.

**Выполните эти команды в терминале Debian:**

1. **Принудительно удалите старый пакет поиска:**
```bash
rm -rf /home/gt/.pi/agent/npm/node_modules/pi-web-access
```

2. **Очистите кэш npm внутри Pi (на всякий случай):**
```bash
rm -rf /home/gt/.pi/agent/npm/node_modules/.cache
```

3. **Попробуйте запустить Pi снова через меню.**

---

### Что произойдет теперь:
1. Меню запустит Pi.
2. Pi увидит, что `@ollama/pi-web-search` нужно установить $\rightarrow$ установит его.
3. Поскольку мы удалили `pi-web-access`, **конфликта имен (`web_search`) больше не будет**.
4. Pi успешно запустится.

**Если вы всё же хотите использовать именно `pi-web-access`, а не версию от Ollama:**
Вам придется запускать Pi не через это меню, а напрямую из терминала командой `pi`, предварительно удалив `@ollama/pi-web-search`, чтобы авто-инсталлер его не вернул. Но проще всего оставить тот поиск, который Pi устанавливает по умолчанию.