AIP Chatbot API (V2)
AIP Chatbot Studio에서 만든 챗봇을 조회하고 대화 세션을 다루는 API입니다. 호환성을 위해 리소스 이름은 Agent, 경로는 /api/v2/aipAgents를 사용합니다.
챗봇 정의와 버전
| 리소스 | 다루는 정보 |
|---|---|
| Agent | 챗봇 메타데이터, 애플리케이션 상태 변수 정의와 클라이언트의 세션 목록 |
| AgentVersion | 두 부분 버전 문자열과 게시 및 저장에 따른 major/minor 정보 |
표시 이름이나 입력 안내 문구, 변수 유형이 필요하면 Agent를 조회합니다. 특정 버전의 구성 요소만 확인하려면 AgentVersion을 조회합니다. 버전을 생략한 Agent 조회는 최신 게시 버전을 선택합니다.
대화 세션에는 연결된 Agent RID와 버전, 제목, 메시지 수 및 예상 만료 시각이 있습니다. 완료된 대화 왕복은 사용자 메시지와 챗봇 응답의 두 메시지로 계산하며 새 대화 교환을 추가하면 예상 만료 시각이 연장됩니다.
요청별 권한 범위를 확인합니다. 여러 Agent의 세션을 조회하는 GET은 api:aip-agents-write가 필요합니다. 미리보기 엔드포인트는 preview=true를 지정해야 하며 언제든 변경되거나 제거될 수 있습니다.
대화 세션과 응답 생성
세션 수명주기는 생성, 대화 추가, 컨텍스트 검색, 취소 및 삭제를 연결하여 설명합니다.
| 작업 | API |
|---|---|
| 세션 만들기 | Create Session |
| 세션 목록과 메타데이터 | List Sessions, Get Session |
| 완성한 응답 받기 | Blocking Continue Session |
| 생성 중인 응답 받기 | Streaming Continue Session |
| 검색 컨텍스트 전처리 | Get RAG Context For Session |
| 진행 중인 스트리밍 취소 | Cancel Session |
| 제목 변경과 세션 삭제 | Update Session Title, Delete Session |
같은 세션에 대화 추가 요청을 동시에 보내지 않습니다. 스트리밍 응답은 Markdown 바이트 스트림이며, 완료 후 Content에서 최종 결과와 변수 변경값을 확인합니다. 스트리밍 대화를 취소할 때는 클라이언트가 읽던 연결도 닫아야 합니다.
대화 내용과 응답 추적
| 리소스 | 다루는 정보 |
|---|---|
| Content | 시간순 대화 이력, 최종 응답, 변수 변경값과 사용한 컨텍스트 |
| SessionTrace | 응답 생성 진행 상태와 도구 호출의 입력 및 출력 |
대화 본문을 표시할 때는 Content를, 응답을 기다리는 동안 진행 상태를 표시할 때는 SessionTrace를 조회합니다. Content의 각 대화 결과에 추적 ID가 들어 있습니다. 추적의 컨텍스트 정보는 응답 생성이 끝난 뒤에 채워집니다.