개발, 생산 및 배포를 포함하여 LLM(대형 언어 모델) 애플리케이션의 라이프사이클을 단순화하는 이 엔드투엔드 프로젝트입니다. 저장소에는 에이전트, API, 체인, 챗봇, GROQ(쿼리 언어), Hugging Face 모델, ObjectBox(내장 데이터베이스), OpenAI 모델 및 RAG와 같은 프로젝트의 구성 요소인 폴더 및 파일이 포함되어 있습니다. ).) 모델. 이 프로젝트는 데이터 처리, 챗봇 개발, 다양한 도구 및 프레임워크와의 통합을 다루는 LLM 작업을 위한 포괄적인 솔루션을 제공하는 것을 목표로 합니다.
이 프로젝트는 Langchain 및 Ollama를 통해 유료 및 오픈 소스 대규모 언어 모델(LLM)을 모두 사용하여 챗봇을 생성하는 방법을 보여줍니다. 개발, 생산 및 배포를 포함하여 LLM 응용 프로그램의 전체 수명주기를 다룹니다.
응. 모든 API는 비밀이며 제한된 사용자 액세스와 익명화된 .gitignore 및 Github 비밀 환경을 통한 또 다른 보안 계층이 있습니다(죄송합니다! 직접 사용해야 합니다!)
conda create -p venv python==3.10 -y
venv S cripts a ctivate
pip install -r requirements.txt
app.py
파일에서 필요한 API 키와 설정을 구성합니다.
python app.py
웹 브라우저를 열고 (또는 컴퓨터에 할당된 프로그레시브 포트)로 이동합니다. 내 것은:
http://localhost:8502
기본 챗봇의 3가지 주요 체인 기능을 호출하여 파일을 생성합니다.
모듈과 라이브러리에 대한 요구 사항을 로드합니다.
app.py를 실행합니다.
app.py
구성을 마치고 실행합니다.
경로를 반환하고 테스트 브라우저에서 호스트를 엽니다.
Local URL: http://localhost:8502
Network URL: http://192.168.100.30:8502
페이지를 확인해 봅시다:
Langchain 프레임워크에서 프로젝트를 검토해 보겠습니다.
정의한 출력의 구조를 살펴보겠습니다.
StrOutputParser를 자세히 살펴보겠습니다.
질문을 해결하기 위해 비용, 토큰화 및 지연 시간을 평가하기 위해 "두 값을 교환하는 Python 코드 제공"에 대해 질문하겠습니다.
*proveeme de un código python que swapee 2 valores.*
:
# Definir los dos valores a intercambiar
a = 5
b = 10
print ( "Valores originales:" )
print ( "a =" , a )
print ( "b =" , b )
# Intercambiar los valores
temp = a
a = b
b = temp
print ( " n Valores intercambiados:" )
print ( "a =" , a )
print ( "b =" , b )
마지막으로 공통 쿼리를 생성합니다.
"question": "강아지 양치는 언제 시작해야 하나요?"
로컬 환경에서 실행하기 위해 Llama2를 컴퓨터에 다운로드하여 Llamama를 구체적으로 로드하겠습니다.
cmd를 열어요
ollama run llama2
우리는 llama2
를 다운로드해요
gpt3.5 turbo
로 생성된 것과 비교하여 Llama2
의 응답 수준, 일관성 및 일관성을 평가하기 위해 동일한 마지막 2개 질문을 참조할 것입니다.이 프로젝트에는 OpenAI의 GPT-3.5 터보와 로컬에서 실행되는 Llama2 모델 간의 비교가 포함됩니다.
우리는 Langchain의 Langsmith를 사용하여 다음을 모니터링합니다.
챗봇을 개선하거나 기능을 확장하기 위한 기여는 언제나 환영합니다. 개선 사항이 있으면 풀 요청을 제출하거나 미결 문제를 제출하세요.
#### 배우고 싶나요? 나에게 DM을 보내주세요!
이 프로젝트는 오픈 소스이며 MIT 라이선스에 따라 사용할 수 있습니다.