객체
ChatRequest
어시스턴트 답변 요청: 대화의 최근 턴, 컬렉션, 검색 설정, 답변 모드, 내보내기, 특정 카드로의 제한, 대화, 질문이 들어온 경로, 도구.
필드
items ≥ 1
collectionstring기본값: "default"
tagsarray of string | nullexportstring | nullcard_idsarray of string | nullitems ≤ 50
streamboolean기본값: false
conversation_idstring | nulllength ≤ 64
originstring | nulltoolsboolean | nullbypass_cacheboolean답변 캐시에서 답변을 가져오지 않아요(캐시된 답변 아래의 “Get a fresh answer” 버튼). 새 답변이 캐시 항목을 대체해요.
기본값: false
languagestring | null답변 언어: 그 언어로 답변하려면 ISO 639-1 코드(
de,en,ru, …)를 지정하세요.auto값이거나 필드가 없으면 질문에서 언어를 감지해요. 웹 화면은 다른 언어로 된 제안의 언어를 명시적으로 전달해요(Starter.language).scopeChatScope | null질문 범위: 여러 컬렉션, 소스, 태그, 기간. 범위의 컬렉션은
collection값을 대체해요. 소스를 지정하면 답변이 그 소스의 컬렉션(과 그 소스 자체의 카드)으로 좁혀져요. 태그는tags값에 추가돼요. 기간은 재무 답변을 그 기간으로 제한해요. 사용자가 볼 수 있는 것만 선택할 수 있어요(컬렉션:collections.no_access/collections.not_found, 소스:sources.not_found).conversation_id값이 있으면 범위가 대화에 저장돼요. 필드가 없으면 대화의 범위가 적용되고,null또는 빈 범위는 대화의 범위를 지워요.request_idstring질문의 멱등성 키. 한 질문에 대한 스트림의 모든 재시도에 같은 키를 보내세요(연결이 끊긴 뒤의 재시도. 이때
Last-Event-ID헤더는 스트림을 이어 가지 않고 기록만 돼요). 이미 저장된 답변의 키로 재시도하면 두 번째 질문이 만들어지지 않아요: 질문 한도나 크레딧 한도가 소진되었더라도 저장된 결과를done이벤트 하나(와 텍스트가 담긴token이벤트)로 다시 보내요. 연결이 끊긴 클라이언트를 위해 이전 답변이 아직 생성 중이면 그 생성을 멈추고 답변을 새로 생성해요.length ≤ 64
version_ofinteger (int64)대화에서 이 질문 턴의 새 버전을 만들어요(대화 기록의
question_id값): 수정한 질문(messages의 새 텍스트), 다시 생성한 답변(같은 텍스트, 보통bypass_cache사용), 또는 다른quality값으로 보낸 같은 질문(예:fast답변 뒤의precise). 이전 질문과 답변 쌍은 유지돼요. 그 뒤의 턴은 이전 버전의 브랜치에 남고, 새 버전이 선택된 동안에는 대화 기록에서 숨겨져요(FeedItem.versions,POST /v1/conversations/{conv_id}/versions). 답변에 쓰는 대화 이력은 이 턴까지의 선택된 브랜치예요. 버전의quality값은 대화 설정을 바꾸지 않아요.conversation_id값이 필요하며, 다른 대화의 질문이면404 questions.not_found오류를 반환해요.qualitystring결과를 찾는 검색의 속도와 정확도 사이의 균형:
fast는 더 빠르고precise는 더 정확해요. 기본값:precise.허용 값:
fastprecise