웹사이트 검색

LangChain이 GenAI를 진정으로 유용한 보조자로 바꾸는 방법


AI 에이전트의 시대는 실제 작업을 위한 워크플로를 허용하는 간단한 모듈을 하나로 묶는 것부터 시작될 수 있습니다. 암 진단은 하나의 예일 뿐입니다.

프로그래머는 LangChain을 사용하여 유방암 진단과 같은 초음파 영상을 ChatGPT 스타일 자연어 프롬프트와 결합할 수 있었습니다.

OpenAI의 ChatGPT와 그 파생물의 생성적 AI 운동은 아마도 나쁜 랩 가사와 자동화된 프로그래밍 지원으로 가장 잘 알려져 있을 것입니다. 그러나 대규모 언어 모델을 기반으로 하는 새로운 오픈 소스 프레임워크는 GenAI에 보다 실용적인 초점을 맞추고 있습니다.

이제 막 1년이 넘은 LangChain은 GenAI 모델을 기반으로 하는 매우 간단한 라이브러리 세트를 통해 AI 에이전트 프로그래밍에 대한 부드러운 소개라고 생각할 수 있습니다. 이 기술은 LangChain으로 구축된 앱의 상업적 배포를 위한 서버 플랫폼을 제공하는 벤처 지원 스타트업의 지원을 받습니다.

LangChain의 핵심은 대규모 언어 모델 프롬프트와 다양한 외부 리소스를 결합한다는 것입니다. 예를 들어 이러한 방식으로 데이터베이스에서 데이터를 가져와 언어 모델 출력을 애플리케이션에 전달하고, 해당 앱의 출력을 가져와 다시 언어 모델에 전달하는 등의 작업을 계속할 수 있습니다.

따라서 프레임워크에서는 리소스를 서로 연결하여 각 리소스가 일종의 에이전트가 되어 언어 모델 및 프롬프트의 컨텍스트 내에서 문제의 일부를 처리할 수 있습니다.

이미 다양한 분야에서 실제적으로 활용되는 흥미로운 사례가 있습니다.

예를 들어 프로그래머는 LangChain을 사용하여 유방암 진단과 같은 초음파 영상을 ChatGPT 스타일 자연어 프롬프트와 결합할 수 있었습니다. 방사선 전문의는 유방 초음파 이미지에서 "프로브 위치에 따라 주어진 관찰 내용을 요약해 주세요"와 같은 문구를 사용하여 분석 보조자로서 컴퓨터를 호출할 수 있습니다.

한국과학기술원 허재영과 동료들이 구축한 이 프로그램의 흥미로운 점은 고전적인 비전 신경망인 ResNet-50이라는 널리 사용되는 세 가지 다른 신경망을 통합한다는 것입니다. 이미지 분류에 뛰어난 네트워크.

3개의 신경망은 각각 초음파 이미지에서 의심스러운 형태를 식별하고, 해당 형태를 분류하고, 신체 내 형태의 위치를 찾아내는 등 하나의 작업을 수행하도록 개별적으로 훈련됩니다.

LangChain의 목적은 "주어진 이미지에 대한 조사 정보 제공"과 "주어진 관찰 내용의 요약 제공"과 같은 자연어 명령 내에서 이 세 가지 네트워크를 래핑하는 것입니다.

가장 단순한 수준에서 LangChain은 AI에 대한 사용자 친화적인 프런트 엔드를 만드는 방법이 될 수 있습니다. 이는 음성 명령에 응답하는 의사 보조자를 만들고자 하는 의료 AI와 같은 분야의 전문가들이 오랫동안 꿈꿔온 종류입니다. .

LangChain의 일부 노력의 목표는 권위 있는 외부 소스에 기술을 기반으로 하여 GenAI의 악명 높은 환각(잘못된 정보를 자신 있게 주장하는 프로그램의 성향)을 제거하려는 것입니다. Sohini Roychowdhury가 이끄는 컨설팅 회사 Accenture의 한 그룹은 '금융 챗봇'을 통해 재무 예측을 수행하는 시스템을 설명합니다.

시스템은 스프레드시트에서 셀을 가져와 데이터에 대한 자연어 설명으로 변환한 다음 검색하여 질문과 일치하는 문장을 찾을 수 있습니다.

작동 방식은 다음과 같습니다. 사용자는 "내 판매 실적은 어떻습니까?"와 같은 자연어 질문으로 언어 모델을 프롬프트합니다. 프롬프트는 언어 모델에 보다 정확한 프롬프트를 생성하는 템플릿에 제공됩니다. 더 나은 프롬프트를 생성하기 위해 해당 프롬프트에는 사람이 생각하는 것보다 더 많은 자세한 질문 단어가 포함될 수 있습니다.

개선된 프롬프트는 키워드 검색을 실행하며, 해당 검색은 표 형식 데이터로 작성된 문장 중 표에서 가장 관련성이 높은 데이터(예: 매출, 이익)를 가리키는 문장을 선택합니다.

관련 데이터가 검색되면 두 번째 템플릿 세트는 챗봇이 채팅 응답의 표 형식 데이터 문장을 사용하여 쿼리에 대한 응답을 공식화하는 데 도움이 됩니다.

Roychowdhury와 팀은 환각을 제거하지 못했습니다. 대신 그들은 챗봇이 질문에 대한 답변을 확인하고 얼마나 잘 일치하는지 확인한 다음 답변에 대해 높음, 중간 또는 낮음의 신뢰도 점수를 할당하는 "신뢰도" 점수 매기기 메커니즘을 설계했습니다.

Roychowdhury는 "신뢰도 점수는 사용자에게 중간에서 낮은 신뢰도 응답을 사용하여 주요 결정을 내릴 때 주의를 기울이도록 지시합니다."라고 설명합니다. "신뢰도 점수는 신뢰성을 위해 어떤 사용자 쿼리를 더욱 구체화해야 하는지 확인하는 데 더욱 도움이 됩니다."

프로그래머들은 LangChain이 매우 일상적인 작업을 자동화하는 방법이 될 수 있음을 발견하고 있습니다. 한 가지 예는 직원의 웹 사용을 검사하여 불법 웹 사이트를 탐색하고 있지 않은지 확인하는 것입니다. 기업의 "허용 가능한 사용 정책"을 설명하는 문서는 벡터 데이터베이스라고 불리는 곳에 업로드됩니다. 이 데이터베이스는 URL과 같은 텍스트 문자열을 문서의 텍스트 문자열 모음과 비교할 수 있는 특별한 종류의 데이터베이스입니다. 경기.

사용자가 브라우저에 URL을 입력하면 사이트 URL과 사이트 콘텐츠 요약이 자동으로 벡터 데이터베이스의 정책 문서와 비교되어 사이트 콘텐츠가 금지된 주제와 일치하는지 확인할 수 있습니다. 프로그래머는 "이 사이트에 금지된 항목과 일치하는 항목이 있습니까?"라고 묻는 간단한 텍스트 프롬프트를 통해 비교를 자동화할 수 있습니다.

이러한 예는 대규모 언어 모델과 LangChain이 개인의 쿼리를 넘어서고 있음을 분명히 보여줍니다. 이는 프로그래머가 자연어 명령을 사용하여 배후에 있는 기능을 위해 원하는대로 다양한 도구를 통합하는 방법이 되고 있습니다.

LangChain은 에이전트 품질을 갖춘 워크플로를 컴파일하기 위한 유일한 프레임워크가 아니며 Microsoft의 Semantic Kernel 및 LangChain을 기반으로 하는 오픈 소스 LlamaIndex를 포함하여 더 많은 프레임워크가 생성되고 있습니다.

지난 10월 스탠포드, UC 버클리, 카네기 멜론의 학자 그룹과 민간 업계의 협력자들은 손으로 코딩한 자연어 프롬프트를 기능적 설명으로 대체하고 자동으로 생성할 수 있는 프로그래밍 접근 방식인 DSPy를 도입했습니다. 프롬프트. 기능 설명은 "질문 사용 및 답변 반환"과 같이 매우 광범위할 수 있습니다. DSPy에는 언어 모델 및 지원 도구의 흐름을 최적화하는 컴파일러가 있습니다.

DSPy 노력은 Torch 및 Theano를 포함하여 추상화 계층을 통해 고급 신경망을 갖춘 딥 러닝 프레임워크와 유사하다고 저자는 지적합니다.

저자는 각 인스턴스에서 사람이 수동으로 프롬프트를 작성하는 것보다 품질이 크게 향상되었다고 주장합니다. "손으로 만든 프롬프트 없이 몇 분에서 수십 분의 컴파일 시간 내에 DSPy 모듈 구성으로 간단한 프로그램의 품질을 33%에서 82%로 높일 수 있습니다."라고 그들은 썼습니다.

GenAI 프레임워크 게임은 매우 초기 단계이며, 내년에는 LangChain의 상단, 하단 및 주변에서 더 많은 추상화 계층을 기대할 수 있습니다.

관련기사