Search for an agent

Introduced 2.12

This is an experimental feature and is not recommended for use in a production environment. For updates on the progress of the feature or if you want to leave feedback, see the associated GitHub issue.

Use this command to search for agents you’ve already created. You can provide any OpenSearch search query in the request body.

Path and HTTP methods

  1. GET /_plugins/_ml/agents/_search
  2. POST /_plugins/_ml/agents/_search

Example request: Searching for all agents

  1. POST /_plugins/_ml/agents/_search
  2. {
  3. "query": {
  4. "match_all": {}
  5. },
  6. "size": 1000
  7. }

copy

Example request: Searching for agents of a certain type

  1. POST /_plugins/_ml/agents/_search
  2. {
  3. "query": {
  4. "term": {
  5. "type": {
  6. "value": "flow"
  7. }
  8. }
  9. }
  10. }

copy

Example: Searching for an agent by description

  1. GET _plugins/_ml/agents/_search
  2. {
  3. "query": {
  4. "bool": {
  5. "should": [
  6. {
  7. "match": {
  8. "description": "test agent"
  9. }
  10. }
  11. ]
  12. }
  13. },
  14. "size": 1000
  15. }

copy

Example response

  1. {
  2. "took": 2,
  3. "timed_out": false,
  4. "_shards": {
  5. "total": 1,
  6. "successful": 1,
  7. "skipped": 0,
  8. "failed": 0
  9. },
  10. "hits": {
  11. "total": {
  12. "value": 6,
  13. "relation": "eq"
  14. },
  15. "max_score": 0.15019803,
  16. "hits": [
  17. {
  18. "_index": ".plugins-ml-agent",
  19. "_id": "8HXlkI0BfUsSoeNTP_0P",
  20. "_version": 1,
  21. "_seq_no": 17,
  22. "_primary_term": 2,
  23. "_score": 0.13904166,
  24. "_source": {
  25. "created_time": 1707532959502,
  26. "last_updated_time": 1707532959502,
  27. "name": "Test_Agent_For_RagTool",
  28. "description": "this is a test flow agent",
  29. "type": "flow",
  30. "tools": [
  31. {
  32. "description": "A description of the tool",
  33. "include_output_in_agent_response": false,
  34. "type": "RAGTool",
  35. "parameters": {
  36. "inference_model_id": "gnDIbI0BfUsSoeNT_jAw",
  37. "embedding_model_id": "Yg7HZo0B9ggZeh2gYjtu_2",
  38. "input": "${parameters.question}",
  39. "source_field": """["text"]""",
  40. "embedding_field": "embedding",
  41. "index": "my_test_data",
  42. "query_type": "neural",
  43. "prompt": """
  44. Human:You are a professional data analyst. You will always answer question based on the given context first. If the answer is not directly shown in the context, you will analyze the data and find the answer. If you don't know the answer, just say don't know.
  45. Context:
  46. ${parameters.output_field}
  47. Human:${parameters.question}
  48. Assistant:"""
  49. }
  50. }
  51. ]
  52. }
  53. }
  54. ]
  55. }
  56. }

Response fields

For response field descriptions, see Register Agent API request fields.