Комментарии 14
Насколько Langchain подходит для написания агентских систем по сравнению со специализированными фреймворками как Swarw, CrewAI?
Думаю, что всё-таки на выбор инструмента сильно зависит от деталей проекта. CrewAI можно довольно эффективно заиспользовать там, где основной фокус на агентах и их взаимодействии между собой. Но если вокруг взаимодействия агентов есть еще какие-то функциональные модули, если система гибридная, то, возможно, стоит взглянуть в сторону LangChain. В ряде кейсов того функционала, который предоставляет LangChain для работы с агентами, может быть вполне достаточно
А еще фреймворки можно использовать совместно! Допустим, на CrewAI реализовать всё, что связано на прямую с агентами, а на LangChain всю прочую логику
В LangChain дебаг и даже простое логирование (без LangSmith) - просто кошмар!
И при более-менее сложной логике он превращается во что-то ужесное
А поделитесь, какими инструментами вы предпочитаете пользоваться, когда имеет место сложная логика? Очень любопытно!
По опыту пары проектов: самому ИМХО часто написать будет проще и быстрее, чем продираться сквозь абстракции
Кстати еще одна история про LangChain: я попробовал использовать их функционал для парсинга сайтов и подготовки к индексированию. К сожалению, сразу вылезло несколько очень странных решений:
1) Парсить и индексировать просто только полностью статические сайты (там, где хватает модуля requests
)
2) Есть отдельный (community) код для selenium
, но он не интегрирован с основной логикой
3) Подправить под себя логику разделения странички на части крайне сложно (API нету, надо переписывать метод класса)
В целом статья очень годная, спасибо!
С моей стороны была не претензия к вам, а скорее боль вылезла ;)
text_data = [ "Котики — любимые животные Сони.", "Котики не любят цитрусовые.", "Котики ласковые, усатые и пугливые."]
Вот только если документов у нас станет не 3, а 3 000 000, котики перестанут находиться по вопросу "что ты знаешь о котиках"
И какое решение есть для 3,000,000?
Настолько я знаю GraphRAG умеет в кластеризацию документов. Через глобальный поиск находит котиков, потом только по ним ищет.
И какое решение есть для 3,000,000?
Иметь в базе вопрос "что ты знаешь о котиках" или его близкое векторное представление, линкованное на нужный материал :)
Например, генерить все вопросы с помощью LLM на доки
Подскажите, наверняка же кто-то уже копал.. Можно ли такое же, но без питона? C[++]/C#/Java/? Потому что, как только возникает вопрос переносимости и предсказуемой разворачиваемости, с питоном хочется вспоминать мемы с пробиванием головы насквозь ладонью (про pyinstaller и его братьев знаю).
Со стороны модельной части восхитительная llamacpp вопрос закрыла уже давно, но вот именно RAG...
Конкретно для LangChain и LlamaIndex есть возможность использовать js/ts. А что касается языков, которые вы упомянули, можно посмотреть на Spring AI для Java :)
Мы пользуемся langchain4j
LangChain vs LlamaIndex: проектируем RAG и разбираемся, что выбрать для вашего проекта