Как стать автором
Обновить
14
0.5

Пользователь

Отправить сообщение

Использование ответов OpenAI API в формате JSON: Введение

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров916

Тема использования JSON в ответах OpenAI API звучала в анонсах примерно год назад и до некоторой степени описана в документации. В частности, Сэм Альтман на презентации одного из крупных релизов говорил о том что о такой фиче активно просили разработчики. Однако с тех пор мне не удалось найти целостных описаний решений, сценариев и паттернов, которые выглядели бы как практически полезные и на основе которых можно было бы быстро составить целостное понимание. Те материалы, которые попадались мне до сих пор, показались мне довольно абстрактными, недостаточно целостными, оторванными от реальности, иногда перегруженными техническими подробностями, за которыми теряется общая картина.

Вчера (6 августа) OpenAI выпустила обновление этого функционала и вместе с ним заметно обновила и дополнила документацию в этой части. С одной стороны, в новой версии документации стало больше конкретных и наглядных примеров. С другой, - в дополнение к понятию Function calling добавилось еще новое понятие Structured Outputs, которое для начинающего пользователя на первых шагах может усложнить понимание.

В этой статье я хотел на небольшом примере дать краткий поверхностный обзор того как, на мой взгляд, можно задействовать JSON-ответы для конкретной задачи. Сразу скажу, что мой пример оказался крайне примитивным (чуть сложнее чем "Hello, World!"). Я старался достичь наглядности за счет демонстрации всего цикла от идеи "продукта", до его рабочего прототипа. Свою задачу я реализовал в трех вариантах (по мере возрастания сложности): "Чат без Function calling", "Чат с Function calling" и "Assistant Function calling". Возможно, кто-то найдет для себя в этом что-то полезное.

Читать далее
Всего голосов 2: ↑2 и ↓0+5
Комментарии0

Как NETFLIX обеспечивает безупречный стриминг? Взгляд архитектуры изнутри

Время на прочтение16 мин
Количество просмотров3.3K

Когда мы погружаемся в мир Netflix, кажется, что все происходит как по волшебству: любимые шоу и фильмы начинают воспроизводиться без задержек, качество изображения всегда на высоте, а рекомендации не перестают удивлять своим точным попаданием в наши интересы. Но что стоит за этим безупречным опытом? Как Netflix обеспечивает безупречное стриминговое качество для миллионов пользователей по всему миру? Ответ кроется в продуманной и сложной архитектуре системы, которая стоит за этим всем.

Продолжить чтение
Всего голосов 16: ↑3 и ↓13-9
Комментарии10

Java Digest #15

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.6K

Всем привет! 👋 👋 👋 👋

Мы Java-разработчики Т-Банка: Андрей, Арсений, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом выпуске у нас много материалов, посвященных развитию Java. Коснемся и Leyden, и Valhalla, и Loom, и GC в JDK 23. За прошедший месяц вышло много интересных докладов с последнего JPoint, некоторые из них мы осветили в этом выпуске. А в разделе со статьями собрали много туториалов и обзоров. Dev-контейнеры от JetBrains, реализация Transactional Outbox с использованием Spring Boot, отслеживание вызова Deprecated-методов, история сбоя в Netflix, связанного с виртуальными тредами, — вот далеко не полный список. И на сладкое — пара свежих выпусков подкастов JavaHut и javaswag. Приятного чтения 😉

Читать выпуск 15
Всего голосов 10: ↑10 и ↓0+12
Комментарии3

[В закладки] 28 фишек Telegram, о которых знают не все

Время на прочтение9 мин
Количество просмотров4.2K

Telegram продолжает развиваться. Собрали новую подборку интересных и скрытых особенностей мессенджера, которые делают его еще удобнее.

Читать далее
Всего голосов 21: ↑10 и ↓11+3
Комментарии9

В сотый раз об эргономике рабочего места (на личном опыте)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров19K

Это мой субъективный, личный опыт, но я очень хочу им поделиться и может помочь кому-то не обрести типичных болячек из-за работы за компьютером, а может помочь избавиться от тех проблем, что уже начали себя проявлять.

Читать далее
Всего голосов 33: ↑31 и ↓2+34
Комментарии48

Состояние Spring в 2024 году

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров7.4K

Команда Spring АйО перевела важнейший документ для Spring-разработчиков!

В начале июня компания VMWare, владеющая Spring, опубликовала результаты исследования, в котором приняло учатие более 1,500 разработчиков по всему миру. Отчёт получился действительно интересным и всеобъемлющим. Были рассмотрены как базовые темы, такие как выбор архитектурных подходов и типов API, так и продвинутые, такие как компиляция в Native Image и использование Spring вместе с Kubernetes.

Читать далее
Всего голосов 10: ↑10 и ↓0+12
Комментарии4

Как увидеть три важнейших софт-скилла, чтобы нанять лучшего инженера

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.9K

Чтобы нанять хорошего инженера, недостаточно проверить только его харды. В статье я расскажу о трех софт-скиллах, которые я обязательно проверяю у каждого кандидата. Если вы начнете проверять эти три навыка, вы начнете нанимать лучших специалистов. А еще я расскажу обратную, темную сторону каждого из качеств.

Меня зовут Олег Федоткин, я программист и менеджер в ИТ. Я провел более сотни собеседований (мне HR даже толстовку «Hiring Hero» по такому случаю подарили) и нанял десятки человек: программистов, тим лидов, юнит лидов, архитекторов — да всех. После всех интервью я выделил три качества, которые неизменно определяют классного специалиста.

Читать далее
Всего голосов 24: ↑20 и ↓4+19
Комментарии14

Сборка Min.io dev кластера в контейнерах

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров2.5K

Сборка Min.io dev кластера в контейнерах с tls, site replication, nginx и мониторингом.

Статья представляет собой пошаговое руководство для разворачивания кластерного minio в контейнерах от bitnami. Доступ в кластер будет организован через nginx. Также рядом развернем однонодный minio. Объединим эти 2 minio с помощью site-replication. Создадим тестового пользователя, тестовую политику, тестовый бакет и попробуем с ним работать. Закончим настройкой мониторинга: дефолтные prometheus для сборки метрик и grafana для отрисовки дашбордов.

Читать далее
Всего голосов 5: ↑5 и ↓0+8
Комментарии7

DevTools наносят ответный удар

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров7.7K

Эта статья родилась после моего участия в организации нескольких треков об инструментах для разработчиков на крупных индустриальных конференциях в 2024 году. Основной ее целью является поделиться историями о том, что интересно девелоперскому коммьюнити, поделиться своим пониманием и накидать ссылочек из моих докладов "на посмотреть". Поэтому для полного погружения рекомендуется пройтись по ссылкам и посмотреть пару видео. Nuff said.

Читать далее
Всего голосов 16: ↑11 и ↓5+9
Комментарии0

User-Centered Design (UCD) Process: Полное руководство

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров686

Процесс ориентированного на пользователя дизайна (UCD) определяет этапы на протяжении всего цикла проектирования и разработки, уделяя особое внимание глубокому пониманию того, кто будет использовать продукт. Проще говоря, пользователь находится в центре разработки продукта с самого его зарождения, и каждый метод и решение принимаются с учетом пользователей. В этой статье мы рассмотрим важность UCD в разработке продуктов, его преимущества, принципы и методы, а также успешные примеры и практические приложения.

Читать далее
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Как разработать онлайновый компилятор кода при помощи Java и Docker

Время на прочтение12 мин
Количество просмотров2.9K
image


Вы когда-нибудь задумывались, как устроены такие платформы как Codeforces и LeetCode? Как именно они компилируют и выполняют код, поступающий от множества пользователей и проверяют его в тестовых кейсах? Как определяют эффективность алгоритмов?
В этой статье мы подробно разберём, как выстроить высокоэффективную платформу для решения задач.

Исходный код к этой статье выложен на Github в этом репозитории
Читать дальше →
Всего голосов 3: ↑3 и ↓0+7
Комментарии0

Как запускать WebAssembly-приложения в Kubernetes с помощью Deckhouse

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров1.6K

Запускать Wasm-приложения в ванильном Kubernetes затруднительно, так как есть неудобства в настройке сред выполнения на рабочих узлах. Штатных средств недостаточно, чтобы легко конфигурировать узлы. Конечно, можно сконфигурировать один узел руками. Но если нужно обкатать различные рантаймы или большое количество приложений, то хочется максимально просто масштабировать кластер и управлять узлами декларативно. Поэтому я решил запустить Wasm-приложение в Deckhouse Kubernetes Platform (DKP). Эта платформа упрощает развёртывание и управление кластерами Kubernetes.

В этой статье я покажу, как запускать Wasm-приложения в Kubernetes с использованием DKP. Мы настроим окружение, установим необходимые компоненты и запустим простой WebAssembly-модуль.

Читать далее
Всего голосов 16: ↑16 и ↓0+22
Комментарии0

Обучение языковых моделей на примере сервиса протоколирования встреч AiGenda

Время на прочтение7 мин
Количество просмотров1K

Привет! Я Евгений Гутин, ML-инженер. 

Два года назад я захотел расширить свои компетенции в NLP и больших языковых моделях. Увидел, что ИТМО с Napoleon IT создал проектную магистратуру по ИИ, где можно получать знания от экспертов и преподавателей в процессе развития реального проекта. Эта идея мне понравилась, и я решил, что хочу поступить в AI Talent Hub и развивать себя как ML-инженера и AI Product-менеджера, работая над своим собственным стартапом.

Во время моего обучения родилась идея нового продукта — AiGenda, ML-сервиса, создающего краткое содержание созвонов на основе аудиозаписей. Хочу рассказать про то, как мы обучаем и дообучаем модели, какие метрики используем. 

А если вам интересно узнать, как набрать подобные навыки, то про обучение немного рассказал в конце статьи. 

Читать далее
Всего голосов 7: ↑6 и ↓1+7
Комментарии0

Разработка через Termidesk: утопия или рабочая реальность разработчика

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.5K

Для того чтобы лучше понимать продукт, нужно его использовать. Звучит вполне логично. Но бывают ситуации, когда продукт, который вы разрабатываете, определяет ваше взаимодействие с инструментами для разработки. То есть он буквально доставляет ваше рабочее место с удаленной машины на локальный компьютер.

Может ли формат доставки рабочих мест в виде Termidesk VDI быть рабочим решением для разработки? В статье будем разбираться, утопия это или вполне себе приятная реальность.

Читать далее
Всего голосов 6: ↑5 и ↓1+6
Комментарии13

Проверка гипотез по методике HADI

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров990

HADI - это метод проверки гипотез, который состоит из 4-х основных этапов: гипотеза → действие → данные → выводы. Этапы идут последовательно один за другим. Затем цикл повторяется снова.

Читать далее
Всего голосов 2: ↑1 и ↓1+2
Комментарии2

Команда роста для цифровых продуктов: разбираемся, что это и кому нужно в первую очередь

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров295

Пользовательский опыт начинается задолго до взаимодействия с продуктом — с первого столкновения с маркетинговыми коммуникациями, то есть с любой информацией о бренде, товаре или компании. И именно от этого зависит общий успех компании на рынке, её репутация и финансовые результаты. Так что, говоря о любых цифровых продуктах, их жизненных циклах и развитии, нельзя забывать и о цифровом маркетинге. 

В БОМБОРЕ вышла вторая книга Ярослава Шуваева, эксперта по корпоративным инновациям, специалиста в области UX/UI-дизайна, основателя shuvaev.com и руководителя крупных digital-проектов для российских и западных компаний, — «Менеджмент цифрового продукта. От идеи до идеала». Советуем прочитать ее всем, кто планирует или уже внедряет цифровые технологии в свою компанию. 

А пока поговорим о том, что такое команды роста, какие их типы существуют и кому они подходят. Устраивайтесь поудобнее :) 

Читать далее
Всего голосов 5: ↑3 и ↓2+5
Комментарии1

Покупка недвижимости за криптовалюту в разных странах

Время на прочтение31 мин
Количество просмотров2.2K

Покупка недвижимости с применением криптовалютных средств в разнообразных государствах превращается в достаточно актуальный вопрос в современном мире. Цифровые денежные единицы, например, биткоин и эфириум, постепенно утверждаются в качестве легитимных способов оплаты. Это способствует росту объемов сделок с недвижимостью, которые осуществляются посредством цифровых средств. Повышенный интерес к подобным инвестициям обусловлен рядом преимуществ, включая оперативность и стоимостную эффективность транзакций, конфиденциальность и способность избегать ограничений, налагаемых национальными валютами.

Основная цель данной статьи ‒ исследовать, в каких странах возможно осуществление покупки недвижимости за криптовалюты. В ходе исследования мы рассмотрим, как различные юрисдикции модифицируют свои законодательные и нормативные базы для того, чтобы включить криптовалюты в сферу жилищного рынка, и оценим, как подобные нововведения могут повлиять на возможности покупателей и инвесторов. 

Читать далее
Всего голосов 11: ↑1 и ↓10-7
Комментарии5

Внутренние коммуникации инженеров: как поддержать командный дух на удалёнке

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.1K

Привет! Я Катя Глушанина, тестировщик в 2ГИС. В далёком 2019 год в нашей компании было не так много сотрудников, а тестировщиков в веб-отделе — ещё меньше. Мы все работали в офисе, много общались и решали вопросы на месте. Ламповость атмосферы была включена по умолчанию. Компания начала расти, и с этим пришли новые вызовы. Стало больше команд, тестировщиков, появились удалённые сотрудники.

Это привело к трём «побочным эффектам»:

Сложности коммуникации. У нас 11 часовых поясов, и это иногда тормозит доставку фич. Например, у меня возник вопрос, а тот, кто может с ним помочь ещё не начал работать или уже закончил.

Нет обмена знаний. В распределённых командах могут чаще придумываться велосипеды.

Чувство изоляции. Одному дома может быть грустно: даже мем не с кем обсудить.

И мы поняли, что нужно что-то менять.

Читать далее
Всего голосов 9: ↑7 и ↓2+9
Комментарии2

Как построить эффективную стратегию мониторинга с высокой наблюдаемостью

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров7.1K


Давайте сразу определимся: самым важным в разработке сейчас является производительность и надежность вашей инфраструктуры, потому что если ваш проект лагает или работает через раз, вас не спасут никакие фичи. Клиент просто уйдет к конкурентам.

Исходя из постулата выше, роль мониторинга систем в последние годы резко возросла. Наши системы перешли от технологических новшеств к статусу критической инфраструктуры, без которой повседневная жизнедеятельность просто невозможна. Однако существует зияющая пропасть между формальным мониторингом и мониторингом, который будет соответствовать сложности и глубине современных систем.
Читать дальше →
Всего голосов 32: ↑32 и ↓0+40
Комментарии0

Есть только 5 способов создать компанию стоимостью более 100 млрд.$. Какие?

Время на прочтение13 мин
Количество просмотров12K

Какие тектонические силы создают по-настоящему успешные технологические компании? Я проанализировал причины успеха компаний с капитализацией свыше 100 млрд.$ и выделил для себя пять моделей, которые отличают данные фирмы от всех остальных. Об этом и будет данная статья.

Начну с того, что у этих компаний есть нечто общее - все они работают на больших концентрированных рынках, где “победитель получает все”. И все они вывели свои флагманские продукты в “окно возможностей”, когда рынок еще не был занят, и при этом превзошли конкурентов. 

Разница в том, как именно данные компании победили в конкурентной борьбе и создали достаточный барьер, чтобы отгородиться от новых конкурентов и закрыть “окно” для входа других предпринимателей. 

Я уверен, что выделенные мной стратегии применимы и для менее крупного бизнеса, который работает на меньших рынках. Но одно можно сказать точно: все из проанализированных мной компаний используют как минимум одну из данных стратегий создания монополии или олигополии на рынке.

Итак, перечислим данные стратегии/эффекты.

Читать далее
Всего голосов 19: ↑15 и ↓4+14
Комментарии16
1
23 ...

Информация

В рейтинге
1 930-й
Откуда
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Зарегистрирован
Активность