You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »



1. 🤖 에이전틱 AI 서비스의 산업화

  • 에이전틱 AI 서비스의 산업화를 위해서는 생산으로의 전환에 필요한 요구사항과 청사진이 중요하다 11.

  • AI 기술은 우리의 삶을 변화시키고 있으며, AI 어시스턴트는 자연어를 이해하고 대화형으로 작업을 해결하는 역할을 한다 15.

  • LLM(대형 언어 모델)은 정적인 일반 지식을 가지고 있으며, 상태가 없고 비결정적이어서 세션 대화 기록을 유지할 수 없다 20.


2. 🤖 에이전틱 서비스의 구조와 필수 요소

  • 에이전틱 서비스는 LLM의 상태성을 추가하여 대화 세션을 관리하고, 실패를 포용하는 특성을 가져야 한다. 이는 비결정론적인 루프에서 발생할 수 있는 실패를 수용해야 함을 의미한다. 29

  • 일반적인 패턴으로는 검색 기반 생성(RAG)이 있으며, 이는 LLM과 추가 정보를 검색하는 기능을 결합하여 대화의 상태를 관리한다. 35

  • 워크플로우는 정적이며 LLM이 비즈니스 프로세스를 오케스트레이션하지 않을 때 사용되는 패턴이고, 에이전트는 완전한 동적성을 갖추어 LLM이 오케스트레이션을 정의한다. 37

  • 에이전트 라이프사이클을 관리하기 위해서는 이벤트 기반 패턴을 구현해야 하며, 이는 대화식 시스템의 특성을 반영해야 한다. 53

  • 메모리 데이터베이스는 대화의 상태를 유지하기 위해 필요하며, 세션별로 데이터를 파티션하여 저장할 수 있는 방법이 필요하다. 이는 서비스의 생산 품질을 보장하는 데 중요하다. 72



3. 🛠️ 내구성 실행 및 분산 시스템 구현

  • 10년 이상 내구성 실행과 대규모 분산 시스템구현에 중점을 두고 있으며, 이는 기업의 비즈니스 모델에 실패를 포함하는 관점을 채택하게 한다 78.

  • 개발자에게 제공되는 SDK는 여섯 개의 높은 수준의 구성 요소를 포함하여 복잡한 아키텍처 패턴을 구축할 수 있게 해준다 84.

  • 워크플로우 단계를 통해 신뢰성 있는 실행상태 복원(point-in-time recovery) 기능을 제공하며, 이는 실패 시 자동으로 복구된다 88.

  • 장기 실행 및 시간 초과와 같은 기능을 갖춘 타이머, HTTP 및 gRPC로 데이터 스트리밍을 위한 엔드포인트, 그리고 다양한 속성으로 메모리를 쿼리할 수 있는 도 지원한다 92.

  • 개발자는 로컬 샌드박스 환경에서 이 도구들을 실험하고 디버그할 수 있으며, 배포는 자동화된 환경, 서버리스 환경 또는 자체 호스팅 방식으로 가능하다 95.


4. 🤖 AI 서비스 자동화 흐름 설계

  • 사용자의 확인 요청 후, LLM은 작업 완료 시 시스템에 보고서를 반환하여 프로세스를 자동화할 수 있다. 141

  • 워크플로우에는 대화 단계를 저장하고, 프롬프트를 저장하는 메모리 데이터베이스와 api 통합을 위한 도구가 포함된다. 146

  • 각 사건에 대한 자동화된 워크플로우는 LLM의 요청에 따라 필요한 통합 단계를 실행하고, 성공적인 작업 완료 후 보고서를 생성한다. 149

  • LLM은 각 요청에 대해 실행 도구를 지정하고, 해당 도구의 워크플로우를 통해 정보를 수집하고 업데이트할 수 있다. 155

  • 코드 구현은 각 단계의 정의와 함께 오류 처리 및 인간 개입 옵션을 포함하여 비즈니스 로직을 모델링하고 비즈니스에 맞춰 확장 가능성을 제공한다. 186


5. 🚀 AI 서비스 워크플로우 및 사용 사례

  • 다양한 워크플로우를 구성하여 API 호출, 메시지 브로커통신, LLM(대규모 언어 모델)과의 연계 등을 유연하게 처리할 수 있다 207.

  • 특정 정보에 대한 비공식적인 챗봇 시스템을 구축하기 위해, 내부 데이터베이스와 대화 기록을 제공해야 한다 220.

  • 대화형 시스템 프롬프트를 사용하여 사용자 질문에 대한 응답을 진행하며, 필요한 경우 "죄송합니다, 도와드릴 수 없습니다."라는 표준 응답으로 대체할 수 있다 229.

  • 귀하의 시스템 요구를 충족시키기 위해, 데이터를 임베딩하고 상태 변화를 관리하는 과정을 자동화해야 한다 231.

  • 라이브 스트리밍 영상에서 미국 수화 인식을 담당하며, 시스템 프롬프트를 통해 올바른 수화 여부를 실시간으로 확인하고 피드백을 받을 수 있다 271.


5.1. ️ 도구 구현을 위한 워크플로우 설명

  • 도구를 구현하기 위한 워크플로우의 예시가 제공된다. [206]

  • 다양한 호출을 정의하여 정보를 API나 메시지 브로커로 전송하고, 관찰 결과를 초기 워크플로우로 다시 업데이트하는 과정이 설명된다. [207]

  • 소비자와 생산자를 구현하는 두 가지 방법이 있으며, 메시지 브로커와의 연결이 용이하다고 언급된다. [211]

  • 특정 인스턴스 ID에 대한 새로운 워크플로우가 생성되고, 이 워크플로우가 시작되는 과정이 강조된다. [213]

  • 시스템에 정보를 되돌려 보내기 위해서는 상태 변화를 메시지로 변환하는 생산자가 필요하다. [214]


5.2. 챗봇 어시스턴트 구현 사례

  • 특정 콘텐츠를 통한 챗봇 어시스턴트 구축 사례를 다룬다. 이 경우, 공공 정보 대신 비공식 정보를 사용하여 오픈 정보를 제공하지 않아야 한다. [218]

  • 사용자 요청에 따라 문서에서 정보를 검색하기 위해서는 전문적 데이터베이스와 대화 기록을 포함한 자원을 제공해야 하며, 이에 대한 시스템 프롬프트가 필요하다. [225]

  • 임베딩을 통해 프롬프트를 향상시키고, 사용자의 요청을 수용할 수 있는 에이전트를 구축하여 산출과 리턴을 관리한다. [230]

  • 각 세션에 대해 인메모리 데이터베이스 인스턴스를 유지하고, 요청 및 응답을 스트리밍할 수 있는 HTTP 스트리밍 엔드포인트를 설정한다. [237]

  • 구축한 챗봇 'Ask AKA'를 통해 정보 검색을 수행하는 실습을 진행하며, 제한된 정보에 대한 요청이 있을 경우 적절한 응답을 제공하기 어려운 상황을 시뮬레이션한다. [240]


5.3. ️ 파일 처리 및 대화 저장 흐름

  • 복잡성이 증가함에 따라, 다양한 자원과의 통합을 관리하는 단계가 필요하다. [249]

  • 파일을 나열하고 임베딩을 수행하는 단계를 구현하여 다양한 파일을 처리한다. [250]

  • 호출을 격리하여, 실패 발생 시 다른 전환을 수행할 수 있는 구조를 마련한다. [253]

  • 임베딩 과정에서는 벡터 데이터베이스와 같은 다양한 도구를 활용할 수 있다. [254]

  • 실패 시에는 파일 목록을 재시도하여 또 다른 단계를 진행할 수 있다. [255]


5.4. 실시간 비디오 및 ASL 인식 시스템

  • 실시간 비디오 스트리밍을 통해 미국 수화(ASL) 인식을 수행하고자 한다. [270]

  • Gemini LLM을 활용하여 수화 인식을 진행하며, 시스템 프롬프트를 통해 사용자에게하는 질문을 보정한다. [272]

  • 시스템 프롬프트는 대화 기록 대신 저장되며, LLM과의 상호작용을 위해 gRPC 스트림을 사용한다. [278]

  • 비디오 스트리밍 중 사용자가 수화 문자를 질문하면 시스템이 그에 대한 응답을 제공하는 방식으로 작동한다. [288]

  • 요청 처리 속도가 느릴 수 있으므로 백프레셔를 적용하여 요청을 효율적으로 관리해야 한다. [292]


5.5. AI 패턴 구현을 위한 플랫폼 개발 요약

  • 프로덕션 그레이드 플랫폼이 필요하며, AI 패턴을 구현하기 위해 서로 다른 도구를 사용할 수 있어야 한다. [301]

  • 실패를 수용하고, 실패를 모델링해야 하며, 플랫폼이 해결해야 할 회복력의 수준을 고려해야 한다. [304]

  • 24-48시간 내에 개념 증명을 제공하며, 흥미로운 사례가 있다면 연락하라고 권장한다. [307]

  • 백프레셔는 사용하는 스트리밍 라이브러리 내에서 구축되며, 여러 상태 기반 클라이언트를 통해 요청을 큐잉할 수 있다. [312]

  • LLM이 응답을 바탕으로 호출해야 할 도구를 오케스트레이션하며, 이를 통해 동적 실행이 가능하다. [347]














  • No labels