Search Message API
출처: 문서
본문
메시지 검색 API
2.12에 도입됨 {: .label .label-purple }
대화형 검색에 사용되는 메시지 정보를 조회해요. 메모리 내에서 일치하는 메시지를 검색하려면 _search 엔드포인트에 쿼리를 보내면 돼요.
Security 플러그인이 활성화되어 있으면 모든 메모리는 private 보안 모드로 존재해요. 메모리를 생성한 사용자만 해당 메모리와 그 메시지와 상호작용할 수 있어요.
{: .important}
엔드포인트
POST /_plugins/_ml/memory/{memory_id}/_search
GET /_plugins/_ml/memory/{memory_id}/_search
경로 파라미터
사용 가능한 경로 파라미터는 다음 표에 나와 있어요.
| 파라미터 | 데이터 타입 | 설명 |
|---|---|---|
memory_id |
String | 쿼리와 일치하는 메시지를 검색하는 데 사용되는 메모리의 ID예요. |
응답 본문 필드
사용 가능한 응답 필드는 다음 표에 나와 있어요.
| 필드 | 데이터 타입 | 설명 |
|---|---|---|
memory_id |
String | 메모리 ID예요. |
message_id |
String | 메시지 ID예요. |
create_time |
String | 메시지가 생성된 시간이에요. |
updated_time |
String | 메시지가 마지막으로 업데이트된 시간이에요. |
input |
String | 메시지에 담긴 질문(사람의 입력)이에요. |
prompt_template |
String | 해당 메시지에 사용된 프롬프트 템플릿이에요. |
response |
String | 질문에 대한 답변(생성형 AI 출력)이에요. |
origin |
String | 응답을 생성한 AI 또는 다른 시스템의 이름이에요. |
additional_info |
Object | origin에 전송된 기타 정보예요. |
parent_message_id |
String | 부모 메시지의 ID예요(trace 메시지인 경우). |
trace_number |
Integer | trace 번호예요(trace 메시지인 경우). |
요청 예제
GET /_plugins/_ml/memory/gW8Aa40BfUsSoeNTvOKI/_search
{
"query": {
"match": {
"input": "interaction"
}
}
}
{% include copy-curl.html %}
응답 예제
{
"took": 5,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"skipped": 0,
"failed": 0
},
"hits": {
"total": {
"value": 1,
"relation": "eq"
},
"max_score": 0.47000366,
"hits": [
{
"_index": ".plugins-ml-memory-message",
"_id": "BW8ha40BfUsSoeNT8-i3",
"_version": 1,
"_seq_no": 0,
"_primary_term": 1,
"_score": 0.47000366,
"_source": {
"input": "How do I make an interaction?",
"memory_id": "gW8Aa40BfUsSoeNTvOKI",
"trace_number": null,
"create_time": "2024-02-02T18:43:23.566994302Z",
"updated_time": "2024-02-02T18:43:23.566994302Z",
"additional_info": {
"suggestion": "api.openai.com"
},
"response": "Hello, this is OpenAI. Here is the answer to your question.",
"origin": "MyFirstOpenAIWrapper",
"parent_message_id": null,
"prompt_template": "Hello OpenAI, can you answer this question?"
}
}
]
}
}