Конспекты
Смарт-конспекты YouTube-видео — ключевые идеи и инсайты без необходимости смотреть часовые ролики
Загрузка...
Смарт-конспекты YouTube-видео — ключевые идеи и инсайты без необходимости смотреть часовые ролики
Пошаговый разбор Vercel AI SDK: работа с провайдерами, Zod-экстракция, Tool Calling и создание динамических React-интерфейсов для AI-агентов.
Маркетинг-стратег, IT-предприниматель, ментор по вайбкодингу
10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.
Об авторе →UI-библиотеки для вайбкодинга: Как создавать премиальные сайты с AI
8 бесплатных ресурсов с UI-компонентами для Cursor и Claude: 3D-эффекты, анимации и дашборды, которые сделают ваш проект визуально дорогим.
Effect TS: Полный гид по новой эре TypeScript для вайбкодеров
Разбор экосистемы Effect TS: как заменить Zustand, TanStack Query и tRPC, и настроить AI-агента для написания надежного кода.
OpenAI Codex Mobile: Полный гид по удаленному управлению компьютером и вайбкодингу
Как управлять компьютером через ChatGPT iOS, использовать YOLO mode для деплоя и создавать Fullstack приложения голосом. Пошаговая настройка OpenAI Codex.
Claude Code + Higgsfield: Создание премиальных анимированных сайтов за часы
Пошаговый гайд по созданию анимированных сайтов уровня Apple с помощью Claude Code и Higgsfield MCP. От вайрфреймов до деплоя на Vercel.
GTM-стратегия нового поколения: Как Vercel и Stripe используют AI-агентов в продажах
Разбор GTM от COO Vercel: роль GTM-инженера, автоматизация SDR через AI, создание Dealbot и подход к продажам как к продукту. Практические советы для стартапов.
SEO-мастеркласс: Как создавать сайты и контент через Claude Code для заработка на трафике
Пошаговое руководство по использованию Claude Code для SEO: от генерации сайта на Next.js до обхода AI-детекторов и технической оптимизации на 100 баллов.
Vercel Labs представила Zero: язык программирования, созданный для AI-агентов
Vercel Labs анонсировала экспериментальный системный язык Zero. Вместо человекочитаемых ошибок он выдает JSON-диагностику, позволяя AI-агентам фиксить баги без галлюцинаций.
Vercel запустила Workflows: новый стандарт для разработки AI-агентов
Vercel представила Workflows — платформу для создания отказоустойчивых приложений и AI-агентов на JS, TS и Python без сложной настройки инфраструктуры.
Gemini 3 Flash захватил лидерство на Vercel: почему вайбкодеры выбирают скорость
CEO Vercel Гильермо Раух подтвердил, что легкая модель от Google стала самой популярной на платформе, обойдя Anthropic и OpenAI по количеству запросов.
🎯 О чём этот конспект: Разбор ключевых возможностей Vercel AI SDK для веб-разработчиков и вайбкодеров. В видео эксперт из Vercel (Nico) демонстрирует переход от простых текстовых запросов к сложной экстракции данных, инструментам (tools) и динамическому генеративному интерфейсу.
👤 Кому будет полезно: Разработчикам на Next.js и React, которые хотят внедрить AI не просто как чат-бот, а как глубоко интегрированную часть продукта с предсказуемым поведением и красивым UI.
✨ Что получите: Вы научитесь работать с единым API для всех LLM, использовать Zod для структурированных ответов, настраивать Tool Calling (агентов) и создавать интерфейсы, которые меняются в зависимости от ответов нейросети.
Контекст: Главная проблема при разработке AI-сервисов — привязка к конкретному SDK провайдера (OpenAI, Anthropic и т.д.). Если вы захотите сменить модель GPT-4o на Claude 3.5 Sonnet, вам придется переписывать значительную часть кода. Vercel AI SDK решает это через систему провайдеров, позволяя менять модель одной строкой кода. Это критически важно для экспериментов и масштабирования, так как разные модели лучше справляются с разными задачами (например, Gemini Flash для классификации, а Sonnet для написания кода).
Выгода: Экономия десятков часов на рефакторинге и возможность мгновенного тестирования новых моделей по мере их выхода.
Как применить:
npm i ai @ai-sdk/openaigenerateText для получения ответа.import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
const { text } = await generateText({
model: openai('gpt-4o'),
prompt: 'Напиши краткое саммари для статьи...',
});Контекст: Нейросети часто возвращают лишний текст («Конечно, вот ваш JSON...»). Для программной обработки нам нужен чистый объект. Функция generateObject в связке с библиотекой Zod гарантирует, что на выходе будет строго типизированный объект, соответствующий вашей схеме. Если модель ошибется в формате, SDK автоматически провалидирует ответ или выдаст ошибку, предотвращая падение фронтенда.
Выгода: 100% детерминизм данных и полная поддержка TypeScript (IntelliSense) при работе с ответами AI.
Как применить:
z.object для описания нужных полей.generateObject.import { generateObject } from 'ai';
import { z } from 'zod';
const { object } = await generateObject({
model: openai('gpt-4o-mini'),
schema: z.object({
category: z.enum(['bug', 'feature', 'billing']),
urgency: z.enum(['low', 'medium', 'high']),
reason: z.string().describe('Краткое обоснование срочности'),
}),
prompt: 'Классифицируй этот тикет: "Не могу войти в аккаунт"',
});
// Теперь object.category имеет тип 'bug' | 'feature' | 'billing'Контекст: Иногда текстового промпта недостаточно, чтобы объяснить модели, как заполнять конкретное поле в JSON. Вместо раздувания основного промпта, Vercel AI SDK позволяет добавлять инструкции прямо в схему Zod через метод .describe(). Это дает модели контекст на уровне конкретного ключа, что значительно повышает точность (например, указание формата даты или ограничение по количеству слов).
Выгода: Более чистые промпты и высокая точность заполнения сложных объектов.
Как применить:
const schema = z.object({
summary: z.string().describe('Саммари текста, максимум 2 предложения'),
language: z.string().describe('Полное название языка, например "Russian", а не "RU"'),
});Контекст: LLM ограничены своими знаниями и не знают текущую погоду или состояние вашей БД. Tools (инструменты) позволяют модели вызывать ваши функции. Если пользователь спрашивает «Какая погода в Москве?», модель понимает, что у неё есть инструмент getWeather, возвращает запрос на его вызов, SDK выполняет ваш код и передает результат обратно модели для финального ответа.
Выгода: Превращение чат-бота в полноценного AI-агента, способного выполнять действия (бронировать билеты, проверять остатки на складе).
Как применить:
execute, которая будет вызвана.const { text } = await streamText({
model: openai('gpt-4o'),
tools: {
getWeather: {
description: 'Получить текущую погоду в локации',
parameters: z.object({
city: z.string().describe('Город для проверки погоды'),
}),
execute: async ({ city }) => {
const temp = await fetchWeatherFromAPI(city); // Ваша логика
return { temperature: temp, unit: 'celsius' };
},
},
},
prompt: 'Какая погода в Токио?',
});Контекст: Текстовые ответы в чате — это скучно. Generative UI позволяет отображать полноценные интерактивные React-компоненты (карточки, графики, кнопки) прямо в потоке сообщений. С помощью хука useChat и свойства toolInvocations вы можете перехватить результат работы инструмента и вместо текста отрендерить, например, красивый виджет погоды.
Выгода: Пользовательский опыт уровня Apple или Airbnb, где AI не просто говорит, а предоставляет интерфейс для решения задачи.
Как применить:
toolInvocations внутри маппинга сообщений.// Внутри компонента чата
{message.toolInvocations?.map((toolInvocation) => {
const { toolName, toolCallId, state } = toolInvocation;
if (toolName === 'getWeather' && state === 'result') {
const { result } = toolInvocation;
return <WeatherCard key={toolCallId} data={result} />;
}
return null;
})}В: Можно ли использовать AI SDK без Next.js? О: Да, ядро SDK работает в любой среде Node.js. Вы можете запускать его в скриптах, GitHub Actions или на любых серверах. Хуки типа useChat также портированы на Vue, Svelte и Solid.
В: В чем разница между generateText и streamText? О: generateText ждет полного ответа от модели (подходит для фоновых задач), а streamText передает токены по мере их генерации (необходимо для чат-ботов, чтобы пользователь не ждал 10-20 секунд).
В: Как ограничить количество шагов агента, чтобы он не ушел в бесконечный цикл? О: Используйте параметр maxSteps в хуке useChat или функции streamText. Обычно 5-10 шагов достаточно для решения большинства задач с вызовом инструментов.
В: Можно ли использовать локальные модели через Ollama? О: Да, AI SDK поддерживает Ollama через соответствующий провайдер. Это позволяет запускать Llama 3 или Mistral локально с тем же API.
В: Как передать состояние чата в базу данных? О: В SDK есть колбэки типа onFinish, где вы можете получить финальный текст и массив сообщений для сохранения в Postgres или MongoDB. Также Vercel предоставляет готовый шаблон Chatbot Template с уже настроенной базой Neon.
Конспект создан на основе видео «AI SDK: Exceptional User Experiences for AI Apps» канала Ray Fernando. Все права на оригинальный материал принадлежат авторам. Источник: https://www.youtube.com/watch?v=8lzBr9QAo_8