
GEN AI 응용 프로그램에 대한 의견이 많은 지식 추출 및 시맨틱 검색.
문서 탐색»
보고 버그 · 요청 기능
Dewy는 문서에서 지식 추출을 관리하고 추출 된 콘텐츠에 대한 시맨틱 검색을 구현하여 AI 에이전트 및 래그 응용 프로그램을 구축 할 수 있도록 도와줍니다. 문서를로드하고 Dewy는 검색을위한 구문 분석, 청킹, 요약 및 색인을 처리합니다. Dewy는 실제 Gen AI 응용 프로그램을 생산에 넣는 교훈을 바탕으로 얻을 수 있도록 집중할 수 있습니까? 벡터 데이터베이스를 비교하고 데이터 추출 인프라 구축보다는 완료되었습니다.
아래는 RAG를 수행하는 AI 에이전트의 전형적인 아키텍처입니다. Dewy는 브라운으로 표시된 모든 부품을 처리하여 응용 프로그램에 집중할 수 있습니다.

(뒤로 맨 위로)
로컬 사본을 올리거나 실행하려면 다음 단계를 따르십시오.
(선택 사항) 데이터를 지속하려면 pgvector 인스턴스를 시작하십시오
Dewy는 벡터 데이터베이스를 사용하여로드 한 문서에 대한 메타 데이터와 의미 검색 결과를 제공하는 데 사용되는 임베딩을 저장합니다.
docker run -d
-p 5432:5432
-e POSTGRES_DB=dewydb
-e POSTGRES_USER=dewydbuser
-e POSTGRES_PASSWORD=dewydbpwd
-e POSTGRES_HOST_AUTH_METHOD=trust
ankane/pgvector 이미 pgvector 인스턴스가있는 경우 Dewy 용 데이터베이스를 작성하고 DB ENV var를 사용하여 사용하여 Dewy를 구성 할 수 있습니다 (아래 참조).
Dewy를 설치하십시오
pip install dewy
이것은 로컬 파이썬 환경에 Dewy를 설치합니다.
Dewy를 구성하십시오. Dewy는 제공된 경우 .env 파일에서 Env vars를 읽습니다. 예를 들어 Docker / Kubernetes에서 실행되는 인스턴스를 구성 할 때 환경에서 직접 설정할 수도 있습니다.
# ~/.env
ENVIRONMENT=LOCAL
DB=postgresql://...
OPENAI_API_KEY=...해고를 해제하십시오
dewyDewy에는 컬렉션을 만들고 문서로드 및 테스트 쿼리를 실행하는 데 사용할 수있는 관리자 콘솔이 포함되어 있습니다.
open http://localhost:8000/adminAPI 클라이언트 라이브러리를 설치하십시오
npm install dewy-tsDewy 인스턴스에 연결하십시오
import { Dewy } from 'dewy_ts' ;
const dewy = new Dewy ( )문서를 추가하십시오
await dewy . kb . addDocument ( {
collection_id : 1 ,
url : “https : //arxiv.org/abs/2005.11401”,
} )LLM 프롬프트에 대한 문서 청크 검색
const context = await dewy . kb . retrieveChunks ( {
collection_id : 1 ,
query : "tell me about RAG" ,
n : 10 ,
} ) ;
// Minimal prompt example
const prompt = [
{
role : 'system' ,
content : `You are a helpful assistant.
You will take into account any CONTEXT BLOCK that is provided in a conversation.
START CONTEXT BLOCK
${ context . results . map ( ( c : any ) => c . chunk . text ) . join ( "n" ) }
END OF CONTEXT BLOCK
` ,
} ,
]
// Using OpenAI to generate responses
const response = await openai . chat . completions . create ( {
model : 'gpt-3.5-turbo' ,
stream : true ,
messages : [ ... prompt , [ { role : 'user' : content : 'Tell me about RAG' } ] ]
} )API 클라이언트 라이브러리를 설치하십시오
pip install dewy-clientDewy 인스턴스에 연결하십시오
from dewy_client import Client
dewy = Client ( base_url = "http://localhost:8000" )문서를 추가하십시오
from dewy_client . api . kb import add_document
from dewy_client . models import AddDocumentRequest
await add_document . asyncio ( client = dewy , body = AddDocumentRequest (
collection_id = 1 ,
url = “ https : // arxiv . org / abs / 2005.11401 ”,
))LLM 프롬프트에 대한 문서 청크 검색
from dewy_client . api . kb import retrieve_chunks
from dewy_client . modles import RetrieveRequest
chunks = await retrieve_chunks . asyncio ( client = dewy , body = RetrieveRequest (
collection_id = 1 ,
query = "tell me about RAG" ,
n = 10 ,
))
# Minimal prompt example
prompt = f"""
You will take into account any CONTEXT BLOCK that is provided in a conversation.
START CONTEXT BLOCK
{ " n " . join ([ chunk . text for chunk in chunks . text_chunks ]) }
END OF CONTEXT BLOCK
""" python-langchain.ipynb'](demos/python-langchain-notebook/python-langchain.ipynb) for an example using Dewy in LangChain, including an implementation of LangChain's 참조하십시오.
Dewy는 적극적으로 개발 중입니다. 이것은 현재 로드맵에 대한 개요입니다. 당신에게 중요한 문제. 응용 프로그램에 Dewy를 더 좋게 만드는 기능이 보이지 않습니다. 기능 요청을 작성하십시오!
공헌은 오픈 소스 커뮤니티를 배우고, 영감을주고, 창조 할 수있는 놀라운 장소입니다. 당신이하는 모든 기여는 대단히 감사합니다 .
이를 더 좋게 만드는 제안이 있다면, repo를 포크하고 풀 요청을 만듭니다. "Enhancement"태그에 문제를 열면 간단히 문제를 열 수도 있습니다. 프로젝트에 별을주는 것을 잊지 마십시오! 다시 한 번 감사드립니다!
git checkout -b feature/AmazingFeature )git commit -m 'Add some AmazingFeature' )git push origin feature/AmazingFeaturegit clone https://github.com/DewyKB/dewy.gitpoetry install.env 파일에서 Env vars를 읽습니다. 예를 들어 Docker / Kubernetes에서 실행되는 인스턴스를 구성 할 때 환경에서 직접 설정할 수도 있습니다. cat > .env << EOF
ENVIRONMENT=LOCAL
DB=postgresql://...
OPENAI_API_KEY=...
EOF cd frontend && npm install && npm run build cd dewy-client && poetry installpoetry run dewyhttps://github.com/zhanymkanov/fastapi-best-practices의 모범 사례를 기반으로 한 일부 골격 코드.
다음 명령은 테스트를 실행하고 적용합니다. 당신이 poetry shell 에 있다면, 당신은 poetry run 생략 할 수 있습니다.
poetry run pytestpoetry run ruff check --fixpoetry run ruff formatpoetry run mypy dewyOpenAPI 사양 및 클라이언트 라이브러리를 재생하려면 :
poetry poe extract-openapi
poetry poe update-client(뒤로 맨 위로)
출시dewy for pyproject.toml b. dewy-client/pyproject.toml for dewy-client /pyproject.toml c. dewy/config.py 의 API 버전 d. openapi.yaml 및 dewy-client poe extract-openapi 및 poe update-client .dewy-client 필요합니다 dewy(뒤로 맨 위로)
Apache 2 라이센스에 따라 배포됩니다. 자세한 내용은 LICENSE.txt 참조하십시오.
(뒤로 맨 위로)