Telegram Group & Telegram Channel
Демка продукта с ассистентом удалась! Клиент был приятно удивлен качеством ответов по базе знаний. Они хотят запустить первых пользователей как можно быстрее 🎉.

Вот вопросы, к которым готовили заранее ответы (и они все пригодились) 🤔

Q: Почему задержки при поиске в 10-20 секунд?
Потому, что при происке нам нужно обработать где-то 10-15 потенциально релевантных документов в контексте вопроса. Даже с распараллеливанием, мы упираемся в задержки и лимиты OpenAI API.

Q: Можно ли это как-то ускорить?
Да, у нас есть несколько вариантов. Если получите выделенный Azure OpenAI deployment, тогда можно использовать его для скорости. Плюс наши бенчмарки отслеживают прогресс в области локальных LLM. Как только какая-нибудь локальная LLM наберет достаточно очков в категориях Docs и Reason для вашего языка, мы сможем все запустить локально на GPU. Embeddings уже работают локальные.

Q: Уходят ли куда-то наши данные?
Да, контекст вопроса и найденные обрезки документов уходят на Azure OpenAI в европейском регионе. Данные не используются для обучения, а доступ к ним ограничен, прямо как с Azure Cognitive services, которые вы уже используете.

Когда пересядем на локальные модели, данные будут полностью оставаться в вашем дата-центре.

Q: Есть ли какие-то ограничения по размеру поисковой базы?
Технических ограничений нет. Наш ассистент для автоматического исправления ошибок в каталогах вообще работает без проблем со всем интернетом :)


⭐️Особенности технической реализации
Нулевая версия работала на LangChain/LLamaIndex c использованием GPT-4. Это стандартный способ начать работу над продуктом: “сначала докажи, что оно может работать на лучшей модели, прежде чем вбухивать недели в модель послабее”.

Думали, что этого и хватит, но вылезли грабли:
(1) база знаний - полная каша
(2) язык - немецкий, он не родной для LLM.
(3) предметная область очень специфичная и запутанная

Простые игры с индексами, размерами chunks и прочими параметрами особо не помогали. Айгиз перебенчмаркал индексы LangChain & LLamaIndex в разных комбинациях и конфигурациях.

🔧 SBERT для embeddings

В процессе быстро уперлись в производительность OpenAI Ada embeddings и пересели на локальные sentence transformers (SBERT). С ними хорошо, и это теперь дефолтовый вариант для всех продуктов.

🔬Тестовый dataset - наше все!

К слову, разные варианты embeddings моделей и конфигураций - тоже бенчмаркали. Во всех бенчмарках помогал тестовый dataset: попросили носителя языка пройтись по базе знаний и составить список простых вопросов, которые можно использовать для оценки качества системы. Благодаря ему все изменения были целенаправленными и итеративными.

🚧 LangChain/LLamaIndex заменили

В процессе итеративных улучшений оказалось проще заменить LangChain/LLamaIndex, на нативные вызовы OpenAI completion. Из NLP библиотек только остались numpy, sentence_transformers, openai. Причем основного кода - 400 строчек, считая начинку промптов 😃

Более быстрый OpenAI - это Azure OpenAI. И меньше вызовов ChatGPT

В процессе скорости OpenAI не совсем радовала. Особенно, она проседает, когда просыпается США. Для решения проблем:
(1) добавление asynсio и распареллеливание запросов
(2) переключение на Azure OpenAI, где скорости лучше
(3) добавление document re-rank, который может быстро отфильтровывать явно “мусорные” документы. Тем самым остается меньше работы на ChatGPT.

💪 ChatGPT-3.5 Turbo - достаточно хорош

Для работы системы используется ChatGPT-3.5, а не ChatGPT-4! В итоговой системе его “грузоподъемности” хватает для прохождения тестовых бенчмарков с достаточно хорошим качеством.

Это восхитительно влияет на бюджет, скорость и стабильность работы.

---
Окончание - ниже, ибо этот пост @llm_under_hood не лезет в лимиты Telegram 🤗
🔥71👍1



tg-me.com/llm_under_hood/48
Create:
Last Update:

Демка продукта с ассистентом удалась! Клиент был приятно удивлен качеством ответов по базе знаний. Они хотят запустить первых пользователей как можно быстрее 🎉.

Вот вопросы, к которым готовили заранее ответы (и они все пригодились) 🤔

Q: Почему задержки при поиске в 10-20 секунд?
Потому, что при происке нам нужно обработать где-то 10-15 потенциально релевантных документов в контексте вопроса. Даже с распараллеливанием, мы упираемся в задержки и лимиты OpenAI API.

Q: Можно ли это как-то ускорить?
Да, у нас есть несколько вариантов. Если получите выделенный Azure OpenAI deployment, тогда можно использовать его для скорости. Плюс наши бенчмарки отслеживают прогресс в области локальных LLM. Как только какая-нибудь локальная LLM наберет достаточно очков в категориях Docs и Reason для вашего языка, мы сможем все запустить локально на GPU. Embeddings уже работают локальные.

Q: Уходят ли куда-то наши данные?
Да, контекст вопроса и найденные обрезки документов уходят на Azure OpenAI в европейском регионе. Данные не используются для обучения, а доступ к ним ограничен, прямо как с Azure Cognitive services, которые вы уже используете.

Когда пересядем на локальные модели, данные будут полностью оставаться в вашем дата-центре.

Q: Есть ли какие-то ограничения по размеру поисковой базы?
Технических ограничений нет. Наш ассистент для автоматического исправления ошибок в каталогах вообще работает без проблем со всем интернетом :)


⭐️Особенности технической реализации
Нулевая версия работала на LangChain/LLamaIndex c использованием GPT-4. Это стандартный способ начать работу над продуктом: “сначала докажи, что оно может работать на лучшей модели, прежде чем вбухивать недели в модель послабее”.

Думали, что этого и хватит, но вылезли грабли:
(1) база знаний - полная каша
(2) язык - немецкий, он не родной для LLM.
(3) предметная область очень специфичная и запутанная

Простые игры с индексами, размерами chunks и прочими параметрами особо не помогали. Айгиз перебенчмаркал индексы LangChain & LLamaIndex в разных комбинациях и конфигурациях.

🔧 SBERT для embeddings

В процессе быстро уперлись в производительность OpenAI Ada embeddings и пересели на локальные sentence transformers (SBERT). С ними хорошо, и это теперь дефолтовый вариант для всех продуктов.

🔬Тестовый dataset - наше все!

К слову, разные варианты embeddings моделей и конфигураций - тоже бенчмаркали. Во всех бенчмарках помогал тестовый dataset: попросили носителя языка пройтись по базе знаний и составить список простых вопросов, которые можно использовать для оценки качества системы. Благодаря ему все изменения были целенаправленными и итеративными.

🚧 LangChain/LLamaIndex заменили

В процессе итеративных улучшений оказалось проще заменить LangChain/LLamaIndex, на нативные вызовы OpenAI completion. Из NLP библиотек только остались numpy, sentence_transformers, openai. Причем основного кода - 400 строчек, считая начинку промптов 😃

Более быстрый OpenAI - это Azure OpenAI. И меньше вызовов ChatGPT

В процессе скорости OpenAI не совсем радовала. Особенно, она проседает, когда просыпается США. Для решения проблем:
(1) добавление asynсio и распареллеливание запросов
(2) переключение на Azure OpenAI, где скорости лучше
(3) добавление document re-rank, который может быстро отфильтровывать явно “мусорные” документы. Тем самым остается меньше работы на ChatGPT.

💪 ChatGPT-3.5 Turbo - достаточно хорош

Для работы системы используется ChatGPT-3.5, а не ChatGPT-4! В итоговой системе его “грузоподъемности” хватает для прохождения тестовых бенчмарков с достаточно хорошим качеством.

Это восхитительно влияет на бюджет, скорость и стабильность работы.

---
Окончание - ниже, ибо этот пост @llm_under_hood не лезет в лимиты Telegram 🤗

BY LLM под капотом


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/llm_under_hood/48

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Look for Channels Online

You guessed it – the internet is your friend. A good place to start looking for Telegram channels is Reddit. This is one of the biggest sites on the internet, with millions of communities, including those from Telegram.Then, you can search one of the many dedicated websites for Telegram channel searching. One of them is telegram-group.com. This website has many categories and a really simple user interface. Another great site is telegram channels.me. It has even more channels than the previous one, and an even better user experience.These are just some of the many available websites. You can look them up online if you’re not satisfied with these two. All of these sites list only public channels. If you want to join a private channel, you’ll have to ask one of its members to invite you.

Dump Scam in Leaked Telegram Chat

A leaked Telegram discussion by 50 so-called crypto influencers has exposed the extraordinary steps they take in order to profit on the back off unsuspecting defi investors. According to a leaked screenshot of the chat, an elaborate plan to defraud defi investors using the worthless “$Few” tokens had been hatched. $Few tokens would be airdropped to some of the influencers who in turn promoted these to unsuspecting followers on Twitter.

telegram from ye


Telegram LLM под капотом
FROM USA