Postgres Q&A는 단어 임베딩과 Postgres를 사용하여 챗봇을 구축하는 방법을 보여주는 프로젝트입니다. 챗봇은 Vercel Edge Functions 및 @neondatabase/serverless 드라이버를 사용하여 구현되며 OpenAI의 GPT-3 API를 사용하여 응답을 생성합니다.
이 프로젝트를 시작하려면 다음이 필요합니다.
필수 구성 요소가 설치되면 다음 단계에 따라 프로젝트를 시작하고 실행하세요.
저장소를 복제합니다.
git clone https://github.com/neondatabase/postgres-qa.git
cd ask-postgres
이 섹션은 OpenAI의 요리책 예제에서 파생되었습니다. 여기에서 Python 코드를 사용하여 웹 크롤러를 구축하고 임베딩을 생성하는 데 필요한 텍스트를 추출할 수 있습니다. 우리는 이미 data/text
디렉토리에서 찾을 수 있는 https://www.postgresql.org/docs/를 기반으로 텍스트 파일을 생성했습니다.
시작하려면 data
디렉터리로 이동하여 새 환경을 만들고 종속성을 설치합니다.
cd data
python -m venv env
source env/bin/activate
pip install -r requirements.txt
데이터베이스로 스키마를 가져옵니다.
psql < database-url > -f database.sql
이제 환경 변수에 DATABASE_URL
및 OPENAI_API_KEY
추가해 보겠습니다.
export DATABASE_URL= < YOUR_NEON_CONEECTION_STRING > OPENAI_API_KEY= < YOUR_OPENAI_API_KEY >
main.py
실행하여 Neon 데이터베이스로 임베딩을 가져옵니다.
python main.py
이 섹션을 처리하는 데 10분이 걸릴 수 있으므로 긴장을 풀고 커피 한 잔을 즐겨보세요!
예상 결과:
Saving to CSV...
Loading tokenizer...
Embedding text...
Connecting to database...
Done !
프로젝트 종속성을 설치합니다.
cd app
npm install
.env 파일 만들기
touch .env.local
다음 환경 변수를 설정합니다.
OPENAI_API_KEY= Your OpenAI API key.
DATABASE_URL= The connection URL for your Neon database.
서버를 시작합니다:
npm run dev
우리는 이 프로젝트에 대한 기여를 환영합니다! 버그를 발견했거나, 제안 사항이 있거나, 코드에 기여하고 싶다면 GitHub 저장소에서 이슈를 열거나 풀 요청을 해주세요.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.