RAG с нуля
LLM обучаются на большом, но фиксированном корпусе данных, что ограничивает их способность рассуждать о частной или недавней информации. Тонкая настройка (Fine-tuning) - один из способов смягчить эту проблему, но зачастую она не очень хорошо подходит для фактического запоминания и может быть дорогостоящей. Популярным и мощным механизмом расширения базы знаний LLM стала генерация с расширением поиска (Retrieval augmented generation, RAG), использующая документы, полученные из внешнего источника данных, для обоснования генерации LLM с помощью внутриконтекстного обучения.
В этом репозитории есть блокноты, а на YouTube есть плейлист, в которых с нуля рассказывается о RAG, начиная с основ индексирования, поиска и генерации.
GitHub: https://github.com/langchain-ai/rag-from-scratch
LLM обучаются на большом, но фиксированном корпусе данных, что ограничивает их способность рассуждать о частной или недавней информации. Тонкая настройка (Fine-tuning) - один из способов смягчить эту проблему, но зачастую она не очень хорошо подходит для фактического запоминания и может быть дорогостоящей. Популярным и мощным механизмом расширения базы знаний LLM стала генерация с расширением поиска (Retrieval augmented generation, RAG), использующая документы, полученные из внешнего источника данных, для обоснования генерации LLM с помощью внутриконтекстного обучения.
В этом репозитории есть блокноты, а на YouTube есть плейлист, в которых с нуля рассказывается о RAG, начиная с основ индексирования, поиска и генерации.
GitHub: https://github.com/langchain-ai/rag-from-scratch
T-Lite и T-Pro – открытые русскоязычные опенсорс-модели на 7 и на 32 млрд параметров
Сегодня мы открываем две большие языковые модели — T-Lite и T-Pro, над которыми работали последние полгода, их можно скачать с huggingface. Они распространяются под лицензией Apache 2.0. Для адаптации моделей под бизнес-кейсы рекомендуем воспользоваться нашей библиотекой turbo-alignment с инструментами для полного цикла работы над LLM.
Статья: https://habr.com/ru/companies/tbank/articles/865582/
Сегодня мы открываем две большие языковые модели — T-Lite и T-Pro, над которыми работали последние полгода, их можно скачать с huggingface. Они распространяются под лицензией Apache 2.0. Для адаптации моделей под бизнес-кейсы рекомендуем воспользоваться нашей библиотекой turbo-alignment с инструментами для полного цикла работы над LLM.
Статья: https://habr.com/ru/companies/tbank/articles/865582/
Смерть упорных разработчиков
Цепочка, позволяющая младшим разработчикам вырасти в старших, разрушена или, по крайней мере, повреждена. Многие задачи теперь можно автоматизировать, поэтому компаниям не нужно так много младших сотрудников. Разработчики, которые не примут программирование на основе чата в качестве основного способа работы, останутся позади.
Статья: https://sourcegraph.com/blog/the-death-of-the-stubborn-developer
Цепочка, позволяющая младшим разработчикам вырасти в старших, разрушена или, по крайней мере, повреждена. Многие задачи теперь можно автоматизировать, поэтому компаниям не нужно так много младших сотрудников. Разработчики, которые не примут программирование на основе чата в качестве основного способа работы, останутся позади.
Статья: https://sourcegraph.com/blog/the-death-of-the-stubborn-developer
Sourcegraph
The death of the stubborn developer | Sourcegraph Blog
How stubborn developers are getting left behind by refusing to adopt chat-oriented programming (CHOP) as their primary development approach.
Малинка в деле: пять креативных проектов на базе Raspberry Pi
Одноплатные компьютеры от Raspberry Pi Foundation и других производителей стали незаменимым инструментом как для любительских экспериментов, так и для профессиональной разработки и промышленного использования. За годы их существования энтузиасты и инженеры воплотили в жизнь тысячи уникальных идей. Сегодня мы расскажем о свеженьких проектах, которые по праву заслуживают вашего внимания.
Статья: https://habr.com/ru/companies/selectel/articles/865986/
Одноплатные компьютеры от Raspberry Pi Foundation и других производителей стали незаменимым инструментом как для любительских экспериментов, так и для профессиональной разработки и промышленного использования. За годы их существования энтузиасты и инженеры воплотили в жизнь тысячи уникальных идей. Сегодня мы расскажем о свеженьких проектах, которые по праву заслуживают вашего внимания.
Статья: https://habr.com/ru/companies/selectel/articles/865986/
🥴1
13 советов для начинающих разработчиков, которые уже прочитали все остальные советы
Недавно кто-то спросил меня, есть ли у меня советы для начинающих программистов. Сначала я подумал, что это глупый вопрос. Я начал работать всего десять лет назад; многие из подписчиков моей рассылки занимаются программированием дольше, чем я!
Потом я прочитал несколько статей «Советы начинающему программисту» и подумал, что некоторые вещи в них упущены. Итак, вот тринадцать советов для начинающих программистов.
Статья: https://apptractor.ru/info/articles/13-sovetov-dlya-nachinayuschih-razrabotchikov-kotorye-uzhe-prochitali-vse-ostalnye-sovety.html
Недавно кто-то спросил меня, есть ли у меня советы для начинающих программистов. Сначала я подумал, что это глупый вопрос. Я начал работать всего десять лет назад; многие из подписчиков моей рассылки занимаются программированием дольше, чем я!
Потом я прочитал несколько статей «Советы начинающему программисту» и подумал, что некоторые вещи в них упущены. Итак, вот тринадцать советов для начинающих программистов.
Статья: https://apptractor.ru/info/articles/13-sovetov-dlya-nachinayuschih-razrabotchikov-kotorye-uzhe-prochitali-vse-ostalnye-sovety.html
Dropbox: как игнорировать пользователей 10 лет
Миллионы людей пользуются облаком Dropbox. Многие из них знают о возможности предложить идею нового функционала. Но только избранные ждут реализацию одной самой желанной фичи уже десять лет. В статье посмотрим, как Dropbox удаётся столь долгий срок не обращать внимание на потребности пользователей.
Статья: https://habr.com/ru/articles/867404/
Миллионы людей пользуются облаком Dropbox. Многие из них знают о возможности предложить идею нового функционала. Но только избранные ждут реализацию одной самой желанной фичи уже десять лет. В статье посмотрим, как Dropbox удаётся столь долгий срок не обращать внимание на потребности пользователей.
Статья: https://habr.com/ru/articles/867404/
😁1
Призраки в машине
Пишут, что Spotify заполняет свои самые популярные плейлисты стоковой музыкой, приписываемой несуществующим музыкантам, «призрачным» или «фальшивым» исполнителям, предположительно, чтобы уменьшить выплаты роялти. Возможно, компания сама создает эти треки. Плейлисты, созданные компанией, становятся важнейшим источником дохода для независимых артистов и лейблов. Spotify отрицает утверждения о том, что компания создает свои собственные треки фальшивых артистов.
Статья: https://harpers.org/archive/2025/01/the-ghosts-in-the-machine-liz-pelly-spotify-musicians/
Пишут, что Spotify заполняет свои самые популярные плейлисты стоковой музыкой, приписываемой несуществующим музыкантам, «призрачным» или «фальшивым» исполнителям, предположительно, чтобы уменьшить выплаты роялти. Возможно, компания сама создает эти треки. Плейлисты, созданные компанией, становятся важнейшим источником дохода для независимых артистов и лейблов. Spotify отрицает утверждения о том, что компания создает свои собственные треки фальшивых артистов.
Статья: https://harpers.org/archive/2025/01/the-ghosts-in-the-machine-liz-pelly-spotify-musicians/
Problem Driven Development
Теория проблемно-ориентированной разработки настолько проста, что кажется очевидной. Но я видел, как многие инженеры и менеджеры по разработке пытались понять, что делать. И я видел, как еще большее их число не могут сказать «нет» senior инженеру, которому нравится решение, не решающее проблему.
Статья: https://blog.staysaasy.com/p/problem-driven-development
Теория проблемно-ориентированной разработки настолько проста, что кажется очевидной. Но я видел, как многие инженеры и менеджеры по разработке пытались понять, что делать. И я видел, как еще большее их число не могут сказать «нет» senior инженеру, которому нравится решение, не решающее проблему.
Статья: https://blog.staysaasy.com/p/problem-driven-development
Staysaasy
Problem Driven Development
Hey bud, what's the problem here?
Новогодний DIY: В лесу крутилась ёлочка
Незаметно подошло время новогодних праздников, а значит, самое время сообразить очередной тематический проект. Например, электронную самоделку. Например, прилагательное ёлочку из светодиодов. На Ардуино. Но не спешите расходиться с постными лицами, ведь я собираюсь вращать её со скоростью 1800 оборотов в минуту! Надеваем защитные очки и приступаем к созданию праздника.
Статья: https://habr.com/ru/companies/ruvds/articles/867904/
Незаметно подошло время новогодних праздников, а значит, самое время сообразить очередной тематический проект. Например, электронную самоделку. Например, прилагательное ёлочку из светодиодов. На Ардуино. Но не спешите расходиться с постными лицами, ведь я собираюсь вращать её со скоростью 1800 оборотов в минуту! Надеваем защитные очки и приступаем к созданию праздника.
Статья: https://habr.com/ru/companies/ruvds/articles/867904/
Программисты, которые не используют автозаполнение/LSP, как вы это делаете?
Многие функции IDE, такие как автозаполнение, языковые серверы и Copilot, сегодня воспринимаются как нечто само собой разумеющееся. Однако не каждый разработчик пользуется этими инструментами. Некоторые разработчики работают в среде, где у них нет доступа к IDE (например, на удаленных серверах, где есть только Vim), поэтому им приходится учиться другим способам работы. Организация программного обеспечения таким образом, чтобы каждый фрагмент кода имел четкое и логичное место, является навыком - инструменты, помогающие в навигации по коду, могут привести к коду, лишенному структуры.
Hacker News: https://news.ycombinator.com/item?id=42492508
Многие функции IDE, такие как автозаполнение, языковые серверы и Copilot, сегодня воспринимаются как нечто само собой разумеющееся. Однако не каждый разработчик пользуется этими инструментами. Некоторые разработчики работают в среде, где у них нет доступа к IDE (например, на удаленных серверах, где есть только Vim), поэтому им приходится учиться другим способам работы. Организация программного обеспечения таким образом, чтобы каждый фрагмент кода имел четкое и логичное место, является навыком - инструменты, помогающие в навигации по коду, могут привести к коду, лишенному структуры.
Hacker News: https://news.ycombinator.com/item?id=42492508
👍1🥴1
Почему нулевой технический долг - это миф (и, возможно, красный флаг)
В конце концов, технический долг — это такая же форма долга, как и любая другая: он управляем, а иногда даже необходим. Это часть естественного баланса в реальном развитии. И если кто-то утверждает, что достиг мифического состояния «нулевого технического долга», я бы сказал, что он либо не понимает сути, либо работает над чем-то настолько несущественным, что это не имеет значения.
Статья: https://apptractor.ru/info/articles/pochemu-nulevoy-tehnicheskiy-dolg-eto-mif-i-vozmozhno-krasnyy-flag.html
В конце концов, технический долг — это такая же форма долга, как и любая другая: он управляем, а иногда даже необходим. Это часть естественного баланса в реальном развитии. И если кто-то утверждает, что достиг мифического состояния «нулевого технического долга», я бы сказал, что он либо не понимает сути, либо работает над чем-то настолько несущественным, что это не имеет значения.
Статья: https://apptractor.ru/info/articles/pochemu-nulevoy-tehnicheskiy-dolg-eto-mif-i-vozmozhno-krasnyy-flag.html
👍1
о3 теснит программистов? Как OpenAI снова всех удивила
Буквально через пару-тройку лет в мире следует ожидать изменения спроса на ряд должностей белых воротничков – от дизайна веб-сайтов до кодирования. Уже любой, кто выполняет в основном повторяющуюся работу, будет в шатком положении или уволен. В то же время я уверен, что будут созданы и другие рабочие места, требующие иных умений и знаний. Изменятся цели, но компании по-прежнему будут конкурировать, и мы довольно далеки от точки, когда люди вообще не будут нужны.
Новость: https://habr.com/ru/companies/lanit/articles/869614/
Буквально через пару-тройку лет в мире следует ожидать изменения спроса на ряд должностей белых воротничков – от дизайна веб-сайтов до кодирования. Уже любой, кто выполняет в основном повторяющуюся работу, будет в шатком положении или уволен. В то же время я уверен, что будут созданы и другие рабочие места, требующие иных умений и знаний. Изменятся цели, но компании по-прежнему будут конкурировать, и мы довольно далеки от точки, когда люди вообще не будут нужны.
Новость: https://habr.com/ru/companies/lanit/articles/869614/
😁2
Мастерство выступлений
Awesome Speaking - коллекция замечательных ресурсов о публичных выступлениях. Это коллекция ссылок, инструментов, статей и советов, которые могут быть полезны тем, кто хочет улучшить свои навыки в ораторском искусстве или подготовке презентаций.
Основные категории:
• Руководства и советы: материалы о том, как структурировать выступление, работать с аудиторией и справляться с волнением.
• Курсы и книги: подборки образовательных ресурсов и литературы о публичных выступлениях.
• Инструменты: утилиты для подготовки слайдов, генерации идей или тренировки навыков выступления.
• Видео и примеры: вдохновляющие выступления и разборы успешных презентаций.
• События и конференции: информация о мероприятиях, где можно выступить или попрактиковаться.
Репозиторий на GitHub: https://github.com/matteofigus/awesome-speaking
Awesome Speaking - коллекция замечательных ресурсов о публичных выступлениях. Это коллекция ссылок, инструментов, статей и советов, которые могут быть полезны тем, кто хочет улучшить свои навыки в ораторском искусстве или подготовке презентаций.
Основные категории:
• Руководства и советы: материалы о том, как структурировать выступление, работать с аудиторией и справляться с волнением.
• Курсы и книги: подборки образовательных ресурсов и литературы о публичных выступлениях.
• Инструменты: утилиты для подготовки слайдов, генерации идей или тренировки навыков выступления.
• Видео и примеры: вдохновляющие выступления и разборы успешных презентаций.
• События и конференции: информация о мероприятиях, где можно выступить или попрактиковаться.
Репозиторий на GitHub: https://github.com/matteofigus/awesome-speaking
GitHub
GitHub - matteofigus/awesome-speaking: Resources about public speaking
Resources about public speaking. Contribute to matteofigus/awesome-speaking development by creating an account on GitHub.
Моя роль технического директора-основателя: седьмой год
Мигель Карранса, основатель RevenueCat, каждый год пишет пост, в котором оглядывается на последние двенадцать месяцев. 2024 год был хорошим годом для RevenueCat, возможно, лучшим с 2020 года. Хотя путь был гораздо более трудным, чем представлял себе Карранза, очевидно, что компания преуспела в достижении своих целей. В статье обсуждаются результаты работы компании в прошлом году, уроки, которые она извлекла (о культуре, найме, построении компании и масштабировании в качестве основателя), а также планы на будущее.
Статья: https://miguelcarranza.es/cto-year-7
Мигель Карранса, основатель RevenueCat, каждый год пишет пост, в котором оглядывается на последние двенадцать месяцев. 2024 год был хорошим годом для RevenueCat, возможно, лучшим с 2020 года. Хотя путь был гораздо более трудным, чем представлял себе Карранза, очевидно, что компания преуспела в достижении своих целей. В статье обсуждаются результаты работы компании в прошлом году, уроки, которые она извлекла (о культуре, найме, построении компании и масштабировании в качестве основателя), а также планы на будущее.
Статья: https://miguelcarranza.es/cto-year-7
🥴1
Приложение-калькулятор? Да каждый может написать такое
Возможно, в математических терминах есть неточность перевода, но от этого история не становится менее эпичной :)
Калькулятор должен показать вам результат введенного вами математического выражения. Это намного, намного сложнее, чем кажется.
То, что я вам сейчас расскажу - величайшая история разработки приложений для калькуляторов, которую когда-либо рассказывали. Изображение выше - это калькулятор в iOS. Заметили что-нибудь?
В нем ошибка.
В Android все правильно. И история о том, как это так, совершенно безумна.
Компания Google наняла Ханса-Я. Боэма, известного по «сборщику мусора Боэма».
Им нужен был элитный кодер, чтобы исправить ситуацию со сборкой мусора и параллельным программированием. Он возглавил работу по определению семантики общих переменных в C++.
Но потом перед ним поставили невыполнимую задачу: написать приложение для калькулятора.
Статья: https://apptractor.ru/info/articles/135833.html
Возможно, в математических терминах есть неточность перевода, но от этого история не становится менее эпичной :)
Калькулятор должен показать вам результат введенного вами математического выражения. Это намного, намного сложнее, чем кажется.
То, что я вам сейчас расскажу - величайшая история разработки приложений для калькуляторов, которую когда-либо рассказывали. Изображение выше - это калькулятор в iOS. Заметили что-нибудь?
В нем ошибка.
(10^100) + 1 - (10^100)
- это 1, а не 0.В Android все правильно. И история о том, как это так, совершенно безумна.
Компания Google наняла Ханса-Я. Боэма, известного по «сборщику мусора Боэма».
Им нужен был элитный кодер, чтобы исправить ситуацию со сборкой мусора и параллельным программированием. Он возглавил работу по определению семантики общих переменных в C++.
Но потом перед ним поставили невыполнимую задачу: написать приложение для калькулятора.
Статья: https://apptractor.ru/info/articles/135833.html
🔥2👍1👏1🤔1
Вакансии в области программной инженерии достигли пятилетнего минимума?
Все вы наверняка видели устрашающий график количества вакансий для разработчиков. Но почему это происходит на самом деле? Гергели Орош, известный разработчик с опытом работы в Uber, Skype и Skyscanner, пытается понять, что стоит за этими цифрами и что делать дальше. Точного ответа у него, традиционно нет, но основные идеи понятны - LLM и небольшие эффективные команды.
Все вы наверняка видели устрашающий график количества вакансий для разработчиков. Но почему это происходит на самом деле? Гергели Орош, известный разработчик с опытом работы в Uber, Skype и Skyscanner, пытается понять, что стоит за этими цифрами и что делать дальше. Точного ответа у него, традиционно нет, но основные идеи понятны - LLM и небольшие эффективные команды.
5 лет опыта ИЛИ 5 раз по 1 году?
Помню, как после собеседования кто-то сказал мне, что у кандидата, которого мы только что видели, не 5 лет опыта, а 5 раз по 1 году.
Это было очень хорошее замечание. Этот человек постоянно работал над небольшими, очень простыми проектами на одинаковых этапах. Из-за этого он никогда не развивал свои навыки, и большинство лет его опыта не имели значения по сравнению с другими кандидатами, которые сталкивались с более широким кругом проблем и задач.
Конечно, логично, что годы, проведенные в отрасли, не означают напрямую большего стажа, но, как ни странно, часто предполагается, что люди со временем становятся лучше. Фокус в том, что это не так, и существует предел того, чего можно достичь, если оставаться на одной и той же работе и не пытаться выйти из своей зоны комфорта.
Помню, как после собеседования кто-то сказал мне, что у кандидата, которого мы только что видели, не 5 лет опыта, а 5 раз по 1 году.
Это было очень хорошее замечание. Этот человек постоянно работал над небольшими, очень простыми проектами на одинаковых этапах. Из-за этого он никогда не развивал свои навыки, и большинство лет его опыта не имели значения по сравнению с другими кандидатами, которые сталкивались с более широким кругом проблем и задач.
Конечно, логично, что годы, проведенные в отрасли, не означают напрямую большего стажа, но, как ни странно, часто предполагается, что люди со временем становятся лучше. Фокус в том, что это не так, и существует предел того, чего можно достичь, если оставаться на одной и той же работе и не пытаться выйти из своей зоны комфорта.
❤2🤡1
Уродливый код и глупые вещи
Идеальный код не гарантирует успеха, если вы не решили реальную проблему для реальных людей. Стремление к элегантности в вакууме приводит к заброшенным побочным проектам или фреймворкам, которые никто не использует. В отличие от этого, неуклюжий, но функциональный код часто содержит только правильные компромиссы для быстрой итерации. А это, в свою очередь, означает, что большое количество запутанного кода способствует созданию продуктов, которые нравятся людям, что является гораздо более сложной задачей.
Идеальный код не гарантирует успеха, если вы не решили реальную проблему для реальных людей. Стремление к элегантности в вакууме приводит к заброшенным побочным проектам или фреймворкам, которые никто не использует. В отличие от этого, неуклюжий, но функциональный код часто содержит только правильные компромиссы для быстрой итерации. А это, в свою очередь, означает, что большое количество запутанного кода способствует созданию продуктов, которые нравятся людям, что является гораздо более сложной задачей.
В защиту простых архитектур
Максимально упростив архитектуру приложений, мы можем тратить бюджет на сложность (и численность персонала) там, где сложность выгодна нашему бизнесу. Идея делать все как можно проще, если нет веских причин для усложнения, позволила нам построить довольно крупный бизнес с небольшим количеством инженеров.
Максимально упростив архитектуру приложений, мы можем тратить бюджет на сложность (и численность персонала) там, где сложность выгодна нашему бизнесу. Идея делать все как можно проще, если нет веских причин для усложнения, позволила нам построить довольно крупный бизнес с небольшим количеством инженеров.