검색 쿼리 만들기 는 에이전트가 대화 기록으로 보강된 사용자 입력의 다시 작성된 버전을 캡처하는 데 사용할 수 있는 토픽 수준 도구입니다. 검색 또는 요약과 같은 다운스트림 작업에서 다시 작성된 쿼리를 사용할 수 있습니다. 이 다시 작성된 문자열은 작성자에게 원래 쿼리의 구조화되고 명확한 버전을 제공하므로 에이전트의 용도에 맞게 용도를 변경할 수 있습니다.
이 기능은 사용자 지정 검색 시나리오에서 특히 강력합니다. 에이전트는 쿼리가 인덱싱된 콘텐츠와 일치하거나 외부 시스템에 전달되거나 분석을 위해 기록되는 방식을 완전히 제어할 수 있습니다.
에이전트가 간단한 질문 및 답변 봇에서 맞춤형 비즈니스 에이전트로 발전함에 따라 사용자 쿼리를 재구성하는 것이 필수적입니다. 쿼리 재작성은 사용자 의도와 도메인별 언어 간의 격차를 해소하여 더 관련성이 높고 정확한 결과를 생성합니다.
검색 쿼리 만들기를 사용하는 경우
다음 작업을 수행하려면 검색 쿼리 만들기를 사용합니다.
사용자 지정 검색 경험 유도
다시 작성된 쿼리 문자열을 사용자 고유의 검색 논리에 대한 입력으로 사용합니다. 예를 들어 타사 API 쿼리, 내부 기술 자료 필터링 또는 동적 프롬프트 작성이 있습니다.
예: 다시 작성된 쿼리를 사용자 지정 SharePoint 또는 SQL 기반 검색 시스템에 공급합니다.
컨텍스트를 통한 관련성 향상
대화 기록을 사용하여 모호한 쿼리를 대상으로 하는 항목으로 다시 작성합니다.
예: 이전 사용자 질문에 따라 "양식 표시"를 "직원 온보딩 요청 양식"으로 전환합니다.
도메인별 검색 강화
조직에서 정보를 분류하거나 인덱싱하는 방법에 맞게 다시 작성된 쿼리를 조정합니다.
예: 부서, 기간 또는 사용자 역할과 같은 태그를 추가하여 검색어를 더 정확하게 만듭니다.
검색 쿼리 생성 작동 방식
에이전트가 사용자 지정 검색을 수행할 노드 아래에 있는 노드 추가 아이콘을 선택합니다.
도구 추가를 선택한 다음 검색 쿼리를 만듭니다.
검색 쿼리 만들기 노드가 캔버스에 나타납니다.
검색 쿼리 만들기 도구는 다음을 기반으로 사용자의 입력을 다시 작성합니다.
- 원본 입력
- 관련 대화 기록 또는 컨텍스트 변수
이 도구는 정리되고 보강된 검색 문자열을 다운스트림 논리에 사용할 변수로 출력합니다.
사용 사례 예: 직원 핸드북 코파일럿
사용자는 "휴가 정책에 대해 알려주세요"라고 말할 수 있습니다.
에이전트는 다음을 사용하여 이 요청을 보강합니다.
휴가의 유형
휴가가 자신을 위한 것인지 다른 사람을 위한 것인지 여부
현재 정책을 원하는지 아니면 과거 정책을 원하는지 여부
대화 흐름(간소화된 YAML 표현)
# Compose the custom search input
- kind: SetVariable
variable: Topic.SearchQueryInput
value: = "Leave policy: " & PlainText(Topic.LeaveType) &
If(Topic.ForSelf, "; for self", "; for someone else") &
"; version: " & PlainText(Topic.IsCurrentPolicy) &
"; original query: " & PlainText(Topic.UserOriginalInput)
# Generate a rewritten query using CreateSearchQuery
- kind: CreateSearchQuery
userInput: =Topic.SearchQueryInput
result: Topic.SearchQuery
# Use it in any way you want
- kind: CustomSearchOrAPI
input: =Topic.SearchQuery
다시 작성된 최종 쿼리 예제
휴가 정책: 병가; 자신을 위해; 버전 : 현재; 원래 쿼리: 병가에 대해 알고 싶습니다.
이 다시 작성된 문자열은 이제 다음과 같을 수 있습니다.
사용자 지정 검색 엔진에 전달됩니다.
외부 API 호출에 사용됩니다.
분석 또는 튜닝을 위해 기록됩니다.
확인을 위해 사용자에게 다시 표시됩니다.