cohere-ai/quick-start-connectors
요약
Cohere의 Build-Your-Own-Connector 프레임워크를 사용하여 Command LLM을 외부 데이터 저장소와 통합하는 방법을 안내합니다. 이를 통해 기업 내부 문서나 특정 데이터 소스를 기반으로 한 근거 있는 답변 생성이 가능합니다.
핵심 포인트
- Cohere Command 모델과 외부 데이터 저장소 간의 통합 프레임워크 제공
- 사내 문서 Q&A, 지식 작업, 외부 정보 탐색 등 다양한 활용 가능
- Python 3.11+, Poetry, Docker를 활용한 개발 및 배포 환경 지원
- 다양한 데이터 소스 확장을 위한 빈 템플릿 커넥터 포함
커넥터(Connectors) 퀵 스타트
Cohere의 Build-Your-Own-Connector 프레임워크를 사용하면 Chat API 엔드포인트를 통해 Cohere의 Command LLM을 텍스트 정보를 보유하고 있으며 API를 통해 상응하는 검색(search) 엔드포인트를 노출하는 모든 데이터 저장소(datastore)/소프트웨어에 통합할 수 있습니다. 이를 통해 Command 모델은 독점 정보(proprietary information)에 근거하여 사용자 질의에 대한 응답을 생성할 수 있습니다.
이 프레임워크를 통해 활성화할 수 있는 사용 사례(use-cases)의 몇 가지 예시는 다음과 같습니다:
- 광범위한 사내 문서에 대한 일반적인 질문/답변 (question/answering)
- 내부 지식의 특정 하위 집합을 활용한 지식 작업
- 내부 커뮤니케이션 요약 및 검색
- 외부 정보 제공자를 활용한 연구를 통해 연구자와 작가가 제3자(3rd parties)의 정보를 탐색할 수 있도록 지원
이 오픈 소스(open-source) 저장소에는 가장 인기 있는 데이터 저장소 중 일부와 통합을 시작할 수 있게 해주는 코드가 포함되어 있습니다. 또한, 어떤 데이터 소스(datasource)로든 확장하여 사용할 수 있는 빈 템플릿 커넥터도 제공됩니다. 좋은 품질의 응답을 얻기 위해서는 데이터 저장소마다 해결해야 할 서로 다른 요구 사항이나 제한 사항이 있을 수 있음에 유의하십시오. 일부 퀵스타트(quickstart) 코드는 이러한 제한 사항 중 일부를 해결하기 위해 개선되었지만, 다른 코드들은 통합의 기본 기능만을 제공하므로 특정 사용 사례 및 기본 데이터 저장소의 제한 사항에 맞게 추가로 개발해야 합니다.
커넥터 프레임워크에 대한 자세한 내용은 여기에서 확인하십시오: https://docs.cohere.com/docs/connectors
이 프로젝트는 최소 Python 3.11+ 및 Poetry를 요구합니다. 각 커넥터는 Poetry를 사용하여 해당 커넥터 전용 가상 환경(virtual environment)을 생성하고, 로컬 서버를 실행하는 데 필요한 모든 종속성(dependencies)을 설치합니다.
프로덕션(production) 릴리스의 경우, 선택적으로 Docker를 사용하여 빌드 및 배포할 수 있습니다. Docker 이미지를 빌드할 때, 프로젝트 루트 디렉토리에 있는 Dockerfile을 사용하고 app 빌드 인자(build argument)를 지정할 수 있습니다. 예시는 다음과 같습니다:
docker build . -t gdrive:1 --build-arg app=gdrive
개발을 위해서는 커넥터(connector)의 README를 참조하십시오. 일반적으로 해당 하위 디렉토리에 .env-template을 기반으로 생성해야 하는 .env 파일이 있습니다. 여기서 환경 변수 (environment variables) 는 주로 API 키, 자격 증명 (credentials) 과 같은 인증 값을 설정하며, 해당 커넥터의 검색 동작 방식을 수정하는 데 사용됩니다.
.env 설정을 마친 후에는 poetry의 CLI를 사용하여 로컬 서버를 시작할 수 있습니다.
파일을 자동으로 린트 (lint) 해주는 정의된 pre-commit을 사용하는 것을 권장합니다. 루트 폴더 내에서 pip install pre-commit 및 pre-commit install을 실행할 수 있습니다. 이제 파일을 커밋하기 전에 자동으로 린트가 수행됩니다. 현재 pre-commit은 black (24.1.1 버전으로 고정됨)을 실행합니다.
이 저장소의 모든 커넥터는 근거 기반 (grounded) 챗봇을 빠르고 쉽게 만들 수 있도록 Cohere의 Chat API와 통합되도록 맞춤 설계되었습니다.
Cohere의 API는 커넥터가 문서를 JSON 객체의 배열 (array of JSON objects) 형태로 반환할 것을 요구합니다. 각 문서는 문자열 키 (string keys) 와 문서에 관한 모든 관련 정보(예: title, url 등)를 포함하는 문자열 값 (string values) 을 가진 객체여야 합니다. 최상의 결과를 얻으려면 가장 큰 텍스트 콘텐츠를 text 키에 저장해야 합니다.
예를 들어, 회사의 경비 정책에 관한 문서를 반환하는 커넥터는 다음과 같이 반환할 수 있습니다:
[
{
"title": "Company Travel Policy",
...
Cohere의 Chat API는 커넥터에 쿼리(query)를 보내고, 이 문서들을 사용하여 직접적인 인용 (citations) 이 포함된 답변을 생성합니다.
기여 (Contributions) 는 오픈 소스 커뮤니티를 움직이는 원동력이며, 모든 기여는 매우 감사하게 생각합니다. 구체적인 사항을 확인하려면 저희 문서를 참조하십시오.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Codex tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기