Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Foundry API로 AIP 챗봇 사용하기

사용자 정의 앱은 세션 생성, 메시지 전송과 이력 조회 API로 여러 차례 대화를 구성할 수 있습니다. 플랫폼이 세션 상태를 관리합니다. 복잡한 세션 관리가 필요 없는 단발 작업은 함수로 게시한 챗봇을 OSDK로 호출하는 경로도 고려할 수 있습니다.

앱 리소스와 권한

먼저 챗봇을 구성하고 게시합니다. Developer Console에서 Platform SDK 리소스를 사용할 수 있는 새 SDK 앱을 만듭니다. OSDK 앱에서 사용할 챗봇은 객체 유형, 액션 유형과 함수 유형을 하나의 온톨로지에서만 사용하도록 구성해야 합니다.

  1. Resources에서 챗봇의 온톨로지를 선택하고 사용한 모든 객체 유형, 액션 유형과 함수를 추가합니다. 애플리케이션 상태, 도구, 검색 문맥에 사용하는 유형을 모두 포함합니다.
  2. Platform SDK > Projects access에 챗봇이 있는 프로젝트를 추가합니다. Studio 머리글에서 이름 옆 파일 경로를 확인하면 프로젝트를 찾을 수 있습니다.
  3. 문서 문맥의 미디어 집합 등 다른 파일시스템 리소스가 다른 프로젝트에 있으면 그 프로젝트도 추가합니다.
  4. Client allowed operations에서 필요한 AIP Chatbots API 작업을 활성화합니다. 대화 세션 생성과 메시지 전송에는 AIP Chatbots write permission이 필요합니다.
  5. 앱 구성을 검토하고 생성을 완료합니다.

챗봇에 객체 유형, 액션, 함수 또는 미디어 집합을 새로 추가해도 Developer Console 앱 리소스는 자동 갱신되지 않습니다. 온톨로지 리소스는 Ontology SDK 설정에, 추가 파일시스템 프로젝트는 Platform SDK 설정에 반영해야 합니다.

대화 실행 순서

챗봇 프로젝트에서 파일을 선택하고 Metadata의 RID를 Copy to clipboard로 복사합니다. Sessions API의 agentRid에 이 값을 사용합니다.

Create Session으로 새 대화를 만들고 응답의 sessionRid로 후속 메시지를 보냅니다. Blocking continue session은 전체 응답 생성이 끝날 때까지 기다리고, Streaming continue session은 생성되는 답변 텍스트를 스트림으로 받습니다.

Get Session은 세션 메타데이터를, Get Content는 요청과 응답의 교환 이력을 가져옵니다. 애플리케이션 변수 입력은 요청의 parameterInputs에 전달합니다. 출력은 블로킹 응답의 parameterUpdates에서 읽거나 스트리밍 후 Get Content로 해당 교환을 읽어 확인합니다. API 필드의 parameter 용어는 현재 UI의 애플리케이션 상태에 대응합니다.

실행 추적

Get Session Trace는 챗봇이 수행한 단계의 순서를 반환하며 sessionTraceId가 필요합니다.

  • 새 교환에서는 UUIDv4를 생성하여 Continue 요청의 sessionTraceId에 넣을 수 있습니다. 이 값을 사용하면 응답 생성 중에도 추적을 조회할 수 있습니다.
  • 블로킹 호출 후에는 응답의 sessionTraceId를 읽을 수 있습니다.
  • 기존 교환은 Get Content가 반환한 교환 결과의 sessionTraceId를 사용합니다.

사용하는 언어의 SDK 초기화와 각 API의 전체 요청 스키마, 권한 및 오류는 공통 Foundry API 참조와 함께 적용합니다. 이 구성은 사용자나 앱에 리소스 접근 권한을 자동으로 부여하지 않습니다.