group-telegram.com/evilfreelancer/1108
Last Update:
Вот мой per summarum по итогу вчерашнего стрима.
1. Tabby - copilot дома
Pros
Данный проект действительно позволяет отказаться от GitHub Copilot или GigaCode, он действительно работает на моём железе, проект использует веса моделей конвертированные в GGUF квантованные до q4_0, которые запускаются через llama.cpp в режиме сервера.
Плагин установленний в IDE отсылает серверу Tabby запрос пользователя, сервер оборачивает его в специальный промт, а затем делает запрос на coding-модель, после чего отдаёт ответ модели пользователю в режиме подсказки IDE, внешне работает всё идентично аналогам.
Ещё проект Tabby может работать в режиме чат-бота (в IDE появляется специальная вкладка), к сожалению чат не может давать ответы по текущему проекту или открытому файлу, это просто общение с моделью общего назначения, интегрированное в IDE.
Помимо этого на стороне сервера можно подключить внешние Git репозитории, скажем с GitHub или локальный Git реп, сервер при помощи сплиттера как-то нарежет код на чанки (вероятно используя что-то типа CodeSplitter из llamaindex или свою реализацию), после чего передаст на вход эмбеддинговой модели (тоже конветированной в GGUF) и сохранит результат в векторную базу, вероятно это либо ChromaDB либо FAISS, или аналог на sqlite.
Эмбеддинги используются в формате RAG (Retrieval Augmented Generation) и благодаря им Tabby будет давать чуть более релевантные рекомендации с учётом уже написанного кода.
Ещё полагаю указанная RAG система будет давать более релевантные ответы в режиме чат-бота, но этот момент я уже не проверял.
Cons
Не смотря на то что там задействована llama.cpp количество моделей сильно ограничено, связанно полагаю это с тем, что для их корректной работы нужно подбирать правильный формат промта, что вероятно в рамках Tabby задача нетривиальная.
Проект Tabby хоть и называет себя OpenSource, но есть нюанс, например он отсылает "анонимную" статистическую информацию об использовании, в момент запуска генерируется уникальный "анонимный" идентификатор, по которому можно будет установить, что телеметрия пришла от вашего сервера, благо это можно отключить.
Ещё пользоваться сервером нельзя без регистрации, нужно это потому, что авторы проекта продают лицензии на серверы количество зарегестрированных пользователей на которых больше 5.
Информация о том, как подключить ollama API в документации Tabby пусть и есть, но она неактуальна в режиме Docker-сервера, пришлось методом научного тыка установить куда класть конфигурацию
Conclusio
Проект Tabby оказался крайне любопытной игрушкой, в принципе думаю, что при желании его можно будет форкнуть и переделать под себя, но учитывая коммерческие вставки, которые у проекта уже есть, мне кажется, что в будущем он станет проприетарным и пойдёт по пути проекта Symless Synergy, поэтому лично я бы не стал сильно завязываться на нём.
BY Pavel Zloi

Share with your friend now:
group-telegram.com/evilfreelancer/1108