728x90 반응형 공부/AI11 [LangChain] Agent와 Tool 사용법 LangChain에서 Agent는 주어진 쿼리에 대해 스스로 생각하여 적절한 행동을 선택하는 대리인이라고 보면 된다. Agent는 자신의 목표를 달성할 때까지 자신에게 주어진 Tool들을 기반으로 적절한 Action을 수행한다. 한번 유명인의 나이를 가지고 수학 연산을 해보자. Tool필요한 tool은 두 가지이다.유명인에 대한 검색 : 최신 정보를 반영하기 위해 검색 api를 사용한다.수학 연산 : 복잡한 수학 연산을 위해tool을 정의해보자. tool을 정의하는 방법에도 여러가지가 있다. 1. Tool 데이터 클래스 사용Tool.from_function( func=llm_math_chain.run, name="Calculator", description="useful for when .. 2023. 11. 27. [LangChain] Chains와 LCEL 사용법 LLM은 단독으로 사용하는 것보다는 여러 요소들(prompt, parser 등등...)을 함께 사용하는 것이 좋다. 이 때 LangChain이 제공해주는 Chains을 사용하면 여러 요소들을 쉽게 통합할 수 있다. 그리고 이 Chains를 구현하기 위해서 크게 두가지 방법이 존재하는데 그 중 LCEL에 대해서 알아보자. LCEL(LangChain Expression Language) prompt, chat model, output parser들을 LCEL을 사용하여 연결해보자. 우선 역사적 인물의 이름을 입력하면 이 인물의 정보를 class로 반환해주는 것을 만들어보자. prompt는 ChatPromptTemplate, chat model은 ChatOpenAI, output parser는 Pydantic.. 2023. 10. 27. [LangChain] Retrieval, RAG (document에서 검색하기) 저번 포스팅에서 기본적인 LangChain 동작 방식과 여러 옵션들을 알아보았다. 이번에는 Retrieval을 통해서 원하는 document에 질의를 한 후 원하는 답변을 얻어보려고 한다. RAG(Retrieval Augmented Generation) RAG는 검색 증강 생성으로 모델이 답변을 생성하는데 도움을 줄 수 있다. LLM 기초 사용법을 알아보면서 prompt를 생성할 때 배경 context라던가 역할을 부여해주면서 더욱 퀄리티 있는 답변을 얻을 수 있었다. RAG 역시 이와 비슷한 역할을 하는데 모델의 답변을 강화하기 위해서 외부에 있는 데이터에서 검색을 하는 것이다. 추가적인 정보를 제공해주기 때문에 정확도 높은 답변을 얻을 수 있는 것이다. 다음은 검색 과정을 나타낸 그림이다. Docum.. 2023. 10. 23. [LangChain] Few Shot Prompting, Dynamic Few Shot Prompting https://growth-coder.tistory.com/254 이전 포스팅에서 prompt에 대해서 알아보았다. 이번 포스팅에서는 Few shot prompting에 대해서 알아보자. Prompt Engineering prompt engineering 이란 LLM을 애플리케이션에 효율적으로 사용할 수 있도록 prompt를 최적화하는 기술이다. prompt engineering 기술을 활용한다면 모델에게 구체적인 작업을 지시할 수도 있고 질문, 답변 형식도 원하는대로 바꿀 수가 있다. Zero-Shot Prompting과 Few-Shot Prompting zero shot prompting이란 예시를 주는 것처럼 학습을 하지 않아도 예측을 진행하는 prompting이다. chat gpt에게 다음 문장을.. 2023. 10. 21. 이전 1 2 3 다음 728x90 반응형