Survival LLM
A free AI assistant and survival library (1.5 million offline articles) that runs on your own computer, with no internet. Shows the source of every answer. Mac and Windows.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Чат-бот с настраиваемой ИИ-личностью. Работает полностью на твоём компьютере через Ollama — без API-ключей, без интернета для самой модели, без ежемесячных платежей. Персонаж по умолчанию: стратег с лёгким нарциссизмом и макиавеллистским складом ума (описание — в personality.py), с обязательными встроенными ограничениями безопасности (см. раздел ниже).檢視完整 README ↗
Чат-бот с настраиваемой ИИ-личностью. Работает полностью на твоём компьютере через Ollama — без API-ключей, без интернета для самой модели, без ежемесячных платежей.
Персонаж по умолчанию: стратег с лёгким нарциссизмом и макиавеллистским складом
ума (описание — в personality.py), с обязательными встроенными ограничениями
безопасности (см. раздел ниже).
В проекте два варианта интерфейса:
main.py) — свой дизайн, боковая панель с несколькими
диалогами, история сохраняется на диске между перезапусками, можно открыть
с телефона в домашней сети. Это основной вариант.app.py) — простой интерфейс на Streamlit в одно окно,
история живёт только в рамках сессии браузера. Оставлена как лёгкая
альтернатива.ollama-persona-chat/
├── main.py # Полноценный сайт: FastAPI-бэкенд + API
├── db.py # Хранение диалогов и сообщений (SQLite)
├── static/ # Фронтенд сайта
│ ├── index.html
│ ├── style.css
│ └── app.js
├── app.py # Быстрая версия на Streamlit (альтернатива)
├── chat_client.py # Обёртка для запросов к Ollama API (общая)
├── personality.py # Системный промт и характер персонажа (общий)
├── requirements.txt
└── README.md
Нужен Python 3.9 или новее.
python --version
Если команда не найдена — скачай Python с python.org. Windows: при установке обязательно поставь галочку "Add python.exe to PATH".
Ollama — бесплатная программа, которая скачивает и запускает языковые модели локально на твоём компьютере.
Проверка:
ollama --version
Если не запущена — запусти вручную:
ollama serve
ollama pull llama3.1:8b
~4.7 ГБ на диске, нужно минимум 8 ГБ оперативной памяти (комфортно — от 16 ГБ).
Если скачивание оборвалось с ошибкой сети (TLS handshake timeout и т.п.) —
просто выполни команду ещё раз, ollama pull докачивает с того места, где
остановилось.
Проверить, что модель на месте:
ollama list
Если 8 ГБ памяти мало — возьми модель полегче, например llama3.2:3b
(ollama pull llama3.2:3b), и выбери её потом в настройках приложения.
Открой терминал в папке проекта (ollama-persona-chat) и выполни:
Windows (PowerShell):
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
macOS / Linux:
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Каждый раз, когда открываешь новый терминал для работы с проектом, нужно заново выполнить команду активации venv.
Убедись, что Ollama запущена, и выполни:
uvicorn main:app --host 0.0.0.0 --port 8000
Открой в браузере http://localhost:8000.
--host 0.0.0.0 — это то, что делает сайт «полноценным»: он слушает не только
запросы с этого же компьютера, но и из локальной сети.
ipconfig → строка "IPv4-адрес" (обычно вида 192.168.1.XX)ifconfig или ip ahttp://<этот-IP>:8000, например
http://192.168.1.42:8000Сама Ollama наружу не открывается и остаётся доступна только с компьютера —
наружу «торчит» только сайт, который сам обращается к Ollama через localhost.
chat_history.db рядом с проектом и не пропадают при перезапуске сервераЕсли полноценный сайт не нужен — есть более простой вариант в одно окно:
streamlit run app.py
Откроется http://localhost:8501. История диалога здесь одна и живёт только
в рамках текущей сессии браузера (обнуляется при перезапуске).
Весь характер персонажа описан текстом в personality.py, в переменной
SYSTEM_PROMPT. Он общий для обеих версий (сайта и Streamlit) — правишь один
файл, меняется поведение в обеих. Там же можно поменять:
PERSONA_NAME — имя персонажаDEFAULT_MODEL — модель по умолчаниюDEFAULT_TEMPERATURE — температура по умолчаниюНезависимо от того, как отредактирован характер, в personality.py заложены
обязательные правила (прописаны в системном промте как приоритетные над
чертами персонажа):
contains_crisis_signal в personality.py) —
проверка по ключевым словам, которая сработает даже до ответа моделиУчти: это разумная защита, а не гарантия на 100% — локальные модели (особенно небольшие) не всегда идеально следуют инструкциям.
"Ollama недоступна" / 🔴 в интерфейсе
Проверь ollama list в терминале. Если ошибка — запусти ollama serve или
открой приложение Ollama заново.
Ошибка про то, что модель не найдена
Выполни ollama pull llama3.1:8b (или ту модель, что указана в DEFAULT_MODEL).
uvicorn: command not found / streamlit: command not found
Виртуальное окружение не активировано, либо зависимости не установлены —
повтори шаг 4.
С телефона сайт не открывается
Проверь: оба устройства в одной Wi-Fi сети; сервер запущен именно с
--host 0.0.0.0, а не просто uvicorn main:app; брандмауэр Windows не
блокирует Python на частных сетях.
Порт занят
Сайт: uvicorn main:app --host 0.0.0.0 --port 8001
Streamlit: streamlit run app.py --server.port 8502
Ответы генерируются очень медленно
Нормально для слабого железа без видеокарты — модель на 8B параметров крутится
на CPU. Попробуй модель полегче, например llama3.2:3b.
Как сбросить всю историю диалогов
Останови сервер и удали файл chat_history.db в папке проекта — при следующем
запуске он создастся заново пустым.