CHATPDF-GPT-это инновационный проект, который использует силу Langchain Framework, преобразующего инструмента для разработки приложений, работающих на языковых моделях. Это уникальное приложение использует Langchain, чтобы предложить интерфейс чата, который связывается с PDF -документами, обусловленными возможностями языковых моделей OpenAI.
В этом проекте языковая модель подключена к другим источникам данных и позволяет взаимодействовать с его средой, тем самым воплощая принципы структуры Langchain. Пользователи могут загружать документ PDF, который затем обрабатывается и сохраняется в Pinecone, векторной базе данных и хранении Supabase. Затем пользователи могут общаться с загруженным PDF, и ИИ использует содержание документа для участия в значимом разговоре.
Проект опирается на Framework Next.js, ведущий выбор для создания надежных, полных веб-приложений. Компоненты пользовательского интерфейса красиво изготовлены с использованием библиотеки пользовательского интерфейса Radix и стилизованы с Tailwind CSS, на основе элегантного шаблона, предоставленного Shadcn/UI.
CHATPDF-GPT оснащен примерами, которые иллюстрируют различные операции, такие как:
Чтобы проверить функциональность этого проекта, используя демонстрацию, вам необходимо предоставить свои собственные учетные данные для OpenAI, Supabase и Pinecone. Для Supabase вы можете следовать пошаговому руководству, представленному ниже для настройки и получения необходимых учетных данных. Для получения учетных данных для Openai и Pinecone, пожалуйста, обратитесь к соответствующей документации в качестве пошагового руководства, возможно, недоступны. Всегда убедитесь, что вы следите за последними инструкциями, предоставленными соответствующими службами.
Openai
Создание нового проекта в Supabase :
Получение URL -адреса подключения базы данных :
Эта строка подключения будет использоваться для переменной среды DATABASE_URL в вашем приложении.
Этот URL будет использоваться для переменной среды DIRECT_URL в вашем приложении.
SUPABASE_URL и SUPABASE_KEY . Скопируйте эти значения. SUPABASE_URL - это URL для вашего проекта, в то время как SUPABASE_KEY является публичным анонимным ключом для вашего проекта.
Настройка ведра супабазы :
SUPABASE_BUCKET в вашем приложении.Настройка переменных среды в вашем приложении :
DATABASE_URLDIRECT_URLSUPABASE_KEYSUPABASE_URLSUPABASE_BUCKETЭти ключи позволят вашему приложению взаимодействовать со службами Supabase.
Обратите внимание, что, хотя можно установить политику, которая делает ваше ведро для хранения общедоступным, вы должны сделать это с осторожностью. Сделать ваше ведро общедоступным означает, что любой, у кого есть URL -адрес объект, может получить к нему доступ. Это может быть полезно для тестирования, но для производственных приложений вы должны рассмотреть более ограничительную политику для обеспечения безопасности ваших данных. Всегда консультируйтесь с документацией Supabase или экспертом по безопасности, чтобы понять последствия различных политик.
При этом вы сможете настроить Supabase для вашего проекта и управлять политиками хранения в соответствии с вашими требованиями.
Pinecone
Чтобы настроить и запустить Chatpdf-GPT на вашей локальной машине, выполните следующие шаги:
Клонировать репозиторий проекта:
git clone https://github.com/anis-marrouchi/chatpdf-gpt.git
Перейдите в каталог проекта и установите зависимости, используя PNPM:
cd chatpdf-gpt
pnpm install
Создайте файл .env в корневом каталоге и заполните свои учетные данные (Openai, Pinecone, Supabase), как указано в файле .env.example .
Создайте схему базы данных, используя Prisma. Вы должны заставить вас запустить Prisma Generate Command prisma generate
npx prisma migrate dev --name init
Запустить сервер:
npm run dev
CHATPDF-GPT-это проект с открытым исходным кодом, и мы тепло приветствуем взносы всех. Пожалуйста, прочитайте наше руководство для получения более подробной информации о том, как начать.
Этот проект стоит на плечах гигантов. Наша работа была бы невозможна без огромного количества библиотек, рамок и инструментов, которые создало сообщество с открытым исходным кодом. В частности, мы хотели бы выразить нашу признательность:
Команда Langchain за их новаторскую структуру для приложений, основанных на языковых моделях.
Openai для их современных языковых моделей, которые делают возможным функциональность чата.
Supabase для их альтернативы Firebase с открытым исходным кодом, которую мы использовали для создания безопасных и эффективных бэкэндов.
Pinecone для их векторной базы данных, которая позволяет легко и эффективно хранить и извлекать векторные встраивания.
Next.js и Vercel для их комплексной структуры, которая позволила нам с легкостью создать это веб-приложение с полным стеком.
Shadcn для их элегантных компонентов пользовательского интерфейса, которые мы создали, чтобы создать красивый и удобный интерфейс.
Radix UI для их надежной, доступной и настраиваемой библиотеки компонентов, которая формирует основу нашего пользовательского интерфейса.
@React-PDF-Viewer для их мощного компонента React, который позволяет пользователям предварительно просмотреть фактический документ PDF, с которым они взаимодействуют.
И все остальные зависимости, как перечисленные, так и не перечисленные, которые способствовали реализации этого проекта. Наш вклад скромный по сравнению с их коллективными усилиями.
CHATPDF-GPT-это программное обеспечение с открытым исходным кодом, лицензированное по лицензии MIT.