LangChain – Model (1/)

https://docs.langchain.com/docs/components/models/

 

랭체인은 llm을 위해 등장했다. llm을 확하고 뜨게 한 것은 ChatGPT.  llm 이름에서 알 수 있듯이 모델이다. 랭체인은 이를 반영해서 모델 컴포넌트를 두었다. 랭체인 등장에 큰 영향을 준게 ChatGPT 니까 채팅 부분을 강조해서 chat model을 포함하고 있다. 그렇다면 embedding은? llm이 뜨면 결국은 기업이나 개인은 개별적으로 보유하고 있는 데이터를 사용하고자 할 것이니 이런 데이터를 llm이 다룰 수 있는 형태로 만들어야 하니 embedding도 중요해지겠지. 역시 랭체인 핵심을 잘 집는다.

Models – LLMs, Chat Models, Text Embedding Models

 

랭체인은 llm과 연동된(llm을 활용한) 애플리케이션 개발을 위한 것, 랭체인이 llm에 맞추지는 것은 당연하다. 랭체인이 들어온 도메인이 ‘llm 연동 애플리케이션 개발’ 이니까.

llm이 없다면 랭체인 또한 존재 이유가 없게 되기 때문에, llm을 빼고 이야기하는 건 무의미하다. llm이 컴포넌트의 하나지만 가장 중요한 것이다. 물론 전체적인 개념을 놓고 이야기하면 그렇다는 것이다. 애플리케이션 개발 관점에서 보면 다를 수 있다. 랭체인은 틀만 잘 만들면 된다. llm을 만들 것은 아니니까.

llm 대표적인 공급자 선수, open ai 등장시켜 코딩해보자. 파이썬으로 구현,  Colab을 사용해 보자.

 

llm은 텍스트를 입력으로 받고 텍스트를 출력한다. 이것을 코딩해 보자.

 

개발자들이 이미 chat gpt로 뜬 open ai에 더 큰 관심을 갖게 된 것은 api를 공개하면서. open ai는 개발자들을 위해 openai 모듈을 제공하고 있다.

langchain과 openai를 사용할거니 모듈을 설치한다.


 

openai에 연결하려면 openai api 사용을 위한 키가 있어야 한다. api 키를 발급받아 OPENAI_API_KEY 부분에 문자열로 작성한다.

랭체인은 openai와 상호작용하는 래퍼 컴포넌트를 만들었다. OpenAI

 

딥러닝 응답 예측을 따와 predict라고 함수 이름을 지은거.  predict는 텍스트 입력을 받아 텍스트를 출력.

입력 텍스트로 “say hi!”를 사용한다.

 

이것을 실행하면 입력에 걸맞는 텍스트가 출력될 것이다.

 

랭체인이 지원하는 llm 제공자들이 벌써 꽤 많다.

 

랭체인은 틀인데, 하나의 컴포넌트를 사용하는 예는 별로 와닿지 않는다.

컴포넌트들을 연결하는 체인을 사용해보자. llm 모델 체인이 있다. LLMChain 

체인 부분을 위해 추가되는 코드다. 지금은 체인이라는 것이 랭체인에서는 중요하겠구나 정도로 패스.

 

About the Author
(주)뉴테크프라임 대표 김현남입니다. 저에 대해 좀 더 알기를 원하시는 분은 아래 링크를 참조하세요. http://www.umlcert.com/kimhn/

Leave a Reply

*