О чём урок
В этом руководстве показано, как создать рабочий процесс семантического поиска с использованием: OpenAI embeddings для преобразования текста в векторные представления интеграции LangChain с Oracle vector store для записи и запроса векторов через привычный Python-интерфейс Oracle AI Database Vector Search для хранения embeddings наряду с реляционными/прикладными данными OpenAI используется для генерации embeddings. LangChain предоставляет абстракцию vector store, а Oracle AI Database обеспечивает хранение векторов и поиск по сходству (similarity search). Это явно определяет роль OpenAI, не подразумевая, что OpenAI предоставляет отдельную управляемую функцию vector search. Этот паттерн полезен для retrieval-augmented generation (RAG), внутреннего семантического поиска и приложений, где исходные данные уже находятся в Oracle. Он позволяет добавить семантический поиск (semantic retrieval) без внедрения отдельной векторной базы данных, сохраняя при этом интерфейс поиска LangChain доступным для более крупных рабочих процессов приложений. Текстовые документы преобразуются в embeddings с помощью text-embedding-3-small. LangChain записывает текст, метаданные и векторы в таблицу Oracle AI Database. Запрос на естественном языке преобразуется в embedding с помощью той же модели OpenAI. Oracle AI Database Vector Search возвращает ближайшие сохраненные документы. Извлеченный текст может быть передан модели генерации в более крупном RAG-приложении. учетных данных из переменных среды или локального файла .env. Подключение к Oracle AI Database с помощью Python-драйвера oracledb. Инициализация OpenAI embeddings и Oracle vector store от LangChain. Вставка небольшого повторно запускаемого набора демонстрационных данных без накопления дубликатов. Выполнение семантического поиска по сходству (semantic similarity search) с помощью similarity_search(..., k=3). Python 3.10+ Ключ OpenAI API с доступом к embeddings Oracle AI Database с включенным Vector Search Python-пакеты: langchain, langchain-openai, langchain-oracledb, oracledb, python-dotenv, numpy Если эти пакеты уже установлены в вашей среде, эта cell не внесет никаких изменений. Notebook считывает конфигурацию из переменных среды.
План урока
- Краткий обзор архитектуры
- Что демонстрирует этот notebook
- Требования
- Установка зависимостей
- Настройка учетных данных и подключения к Oracle
- Варианты настройки Oracle
- Подключение к Oracle AI Database
- Выбор демонстрационной таблицы и метрики расстояния
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.