hermes-client-python 1.4.48__tar.gz → 1.4.50__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hermes-client-python
3
- Version: 1.4.48
3
+ Version: 1.4.50
4
4
  Summary: Async Python client for Hermes search server
5
5
  Project-URL: Homepage, https://github.com/SpaceFrontiers/hermes
6
6
  Project-URL: Repository, https://github.com/SpaceFrontiers/hermes
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "hermes-client-python"
7
- version = "1.4.48"
7
+ version = "1.4.50"
8
8
  description = "Async Python client for Hermes search server"
9
9
  readme = "README.md"
10
10
  license = "MIT"
@@ -262,6 +262,7 @@ class HermesClient:
262
262
  index_name: str,
263
263
  *,
264
264
  term: tuple[str, str] | None = None,
265
+ match: tuple[str, str] | None = None,
265
266
  boolean: dict[str, list[tuple[str, str]]] | None = None,
266
267
  sparse_vector: tuple[str, list[int], list[float]] | None = None,
267
268
  sparse_text: tuple[str, str] | None = None,
@@ -280,7 +281,9 @@ class HermesClient:
280
281
 
281
282
  Args:
282
283
  index_name: Name of the index
283
- term: Term query as (field, term) tuple
284
+ term: Term query as (field, term) tuple - exact single-term match
285
+ match: Match query as (field, text) tuple - tokenizes text server-side
286
+ and searches as OR of individual tokens (use for natural language)
284
287
  boolean: Boolean query with "must", "should", "must_not" keys
285
288
  sparse_vector: Sparse vector query as (field, indices, values) tuple
286
289
  sparse_text: Sparse vector query with server-side tokenization as (field, text) tuple
@@ -302,9 +305,12 @@ class HermesClient:
302
305
  SearchResponse with hits
303
306
 
304
307
  Examples:
305
- # Term query
308
+ # Term query (exact single token)
306
309
  results = await client.search("articles", term=("title", "hello"))
307
310
 
311
+ # Match query (full-text, tokenized server-side)
312
+ results = await client.search("articles", match=("title", "what is hemoglobin"))
313
+
308
314
  # Boolean query
309
315
  results = await client.search("articles", boolean={
310
316
  "must": [("title", "hello")],
@@ -333,6 +339,7 @@ class HermesClient:
333
339
 
334
340
  query = _build_query(
335
341
  term=term,
342
+ match=match,
336
343
  boolean=boolean,
337
344
  sparse_vector=sparse_vector,
338
345
  sparse_text=sparse_text,
@@ -566,6 +573,7 @@ def _reranker_combiner_to_proto(combiner: str) -> int:
566
573
  def _build_query(
567
574
  *,
568
575
  term: tuple[str, str] | None = None,
576
+ match: tuple[str, str] | None = None,
569
577
  boolean: dict[str, list[tuple[str, str]]] | None = None,
570
578
  sparse_vector: tuple[str, list[int], list[float]] | None = None,
571
579
  sparse_text: tuple[str, str] | None = None,
@@ -580,17 +588,21 @@ def _build_query(
580
588
  field, value = term
581
589
  return pb.Query(term=pb.TermQuery(field=field, term=value))
582
590
 
591
+ if match is not None:
592
+ field, text = match
593
+ return pb.Query(match=pb.MatchQuery(field=field, text=text))
594
+
583
595
  if boolean is not None:
584
596
  must = [
585
- pb.Query(term=pb.TermQuery(field=f, term=t))
597
+ pb.Query(match=pb.MatchQuery(field=f, text=t))
586
598
  for f, t in boolean.get("must", [])
587
599
  ]
588
600
  should = [
589
- pb.Query(term=pb.TermQuery(field=f, term=t))
601
+ pb.Query(match=pb.MatchQuery(field=f, text=t))
590
602
  for f, t in boolean.get("should", [])
591
603
  ]
592
604
  must_not = [
593
- pb.Query(term=pb.TermQuery(field=f, term=t))
605
+ pb.Query(match=pb.MatchQuery(field=f, text=t))
594
606
  for f, t in boolean.get("must_not", [])
595
607
  ]
596
608
  return pb.Query(
@@ -0,0 +1,126 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: hermes.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'hermes.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0chermes.proto\x12\x06hermes\"\xad\x02\n\x05Query\x12!\n\x04term\x18\x01 \x01(\x0b\x32\x11.hermes.TermQueryH\x00\x12\'\n\x07\x62oolean\x18\x02 \x01(\x0b\x32\x14.hermes.BooleanQueryH\x00\x12#\n\x05\x62oost\x18\x03 \x01(\x0b\x32\x12.hermes.BoostQueryH\x00\x12\x1f\n\x03\x61ll\x18\x04 \x01(\x0b\x32\x10.hermes.AllQueryH\x00\x12\x32\n\rsparse_vector\x18\x05 \x01(\x0b\x32\x19.hermes.SparseVectorQueryH\x00\x12\x30\n\x0c\x64\x65nse_vector\x18\x06 \x01(\x0b\x32\x18.hermes.DenseVectorQueryH\x00\x12#\n\x05match\x18\x07 \x01(\x0b\x32\x12.hermes.MatchQueryH\x00\x42\x07\n\x05query\"\xe2\x01\n\x11SparseVectorQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0f\n\x07indices\x18\x02 \x03(\r\x12\x0e\n\x06values\x18\x03 \x03(\x02\x12\x0c\n\x04text\x18\x04 \x01(\t\x12,\n\x08\x63ombiner\x18\x05 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x13\n\x0bheap_factor\x18\x06 \x01(\x02\x12\x1c\n\x14\x63ombiner_temperature\x18\x07 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x08 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\t \x01(\x02\"\xd4\x01\n\x10\x44\x65nseVectorQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0e\n\x06vector\x18\x02 \x03(\x02\x12\x0e\n\x06nprobe\x18\x03 \x01(\r\x12\x15\n\rrerank_factor\x18\x04 \x01(\r\x12,\n\x08\x63ombiner\x18\x05 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x1c\n\x14\x63ombiner_temperature\x18\x06 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x07 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\x08 \x01(\x02\"(\n\tTermQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04term\x18\x02 \x01(\t\"k\n\x0c\x42ooleanQuery\x12\x1b\n\x04must\x18\x01 \x03(\x0b\x32\r.hermes.Query\x12\x1d\n\x06should\x18\x02 \x03(\x0b\x32\r.hermes.Query\x12\x1f\n\x08must_not\x18\x03 \x03(\x0b\x32\r.hermes.Query\"9\n\nBoostQuery\x12\x1c\n\x05query\x18\x01 \x01(\x0b\x32\r.hermes.Query\x12\r\n\x05\x62oost\x18\x02 \x01(\x02\"\n\n\x08\x41llQuery\")\n\nMatchQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"\xb4\x01\n\x08Reranker\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0e\n\x06vector\x18\x02 \x03(\x02\x12\r\n\x05limit\x18\x03 \x01(\r\x12,\n\x08\x63ombiner\x18\x04 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x1c\n\x14\x63ombiner_temperature\x18\x05 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x06 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\x07 \x01(\x02\"\x9c\x01\n\rSearchRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x1c\n\x05query\x18\x02 \x01(\x0b\x32\r.hermes.Query\x12\r\n\x05limit\x18\x03 \x01(\r\x12\x0e\n\x06offset\x18\x04 \x01(\r\x12\x16\n\x0e\x66ields_to_load\x18\x05 \x03(\t\x12\"\n\x08reranker\x18\x06 \x01(\x0b\x32\x10.hermes.Reranker\"\xca\x01\n\tSearchHit\x12\x0e\n\x06\x64oc_id\x18\x01 \x01(\r\x12\r\n\x05score\x18\x02 \x01(\x02\x12-\n\x06\x66ields\x18\x03 \x03(\x0b\x32\x1d.hermes.SearchHit.FieldsEntry\x12,\n\x0eordinal_scores\x18\x04 \x03(\x0b\x32\x14.hermes.OrdinalScore\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue:\x02\x38\x01\".\n\x0cOrdinalScore\x12\x0f\n\x07ordinal\x18\x01 \x01(\r\x12\r\n\x05score\x18\x02 \x01(\x02\"\xdb\x01\n\nFieldValue\x12\x0e\n\x04text\x18\x01 \x01(\tH\x00\x12\r\n\x03u64\x18\x02 \x01(\x04H\x00\x12\r\n\x03i64\x18\x03 \x01(\x03H\x00\x12\r\n\x03\x66\x36\x34\x18\x04 \x01(\x01H\x00\x12\x15\n\x0b\x62ytes_value\x18\x05 \x01(\x0cH\x00\x12-\n\rsparse_vector\x18\x06 \x01(\x0b\x32\x14.hermes.SparseVectorH\x00\x12+\n\x0c\x64\x65nse_vector\x18\x07 \x01(\x0b\x32\x13.hermes.DenseVectorH\x00\x12\x14\n\njson_value\x18\x08 \x01(\tH\x00\x42\x07\n\x05value\"/\n\x0cSparseVector\x12\x0f\n\x07indices\x18\x01 \x03(\r\x12\x0e\n\x06values\x18\x02 \x03(\x02\"\x1d\n\x0b\x44\x65nseVector\x12\x0e\n\x06values\x18\x01 \x03(\x02\"V\n\x0eSearchResponse\x12\x1f\n\x04hits\x18\x01 \x03(\x0b\x32\x11.hermes.SearchHit\x12\x12\n\ntotal_hits\x18\x02 \x01(\r\x12\x0f\n\x07took_ms\x18\x03 \x01(\x04\"8\n\x12GetDocumentRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x0e\n\x06\x64oc_id\x18\x02 \x01(\r\"\x91\x01\n\x13GetDocumentResponse\x12\x37\n\x06\x66ields\x18\x01 \x03(\x0b\x32\'.hermes.GetDocumentResponse.FieldsEntry\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue:\x02\x38\x01\")\n\x13GetIndexInfoRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"\x8d\x01\n\x14GetIndexInfoResponse\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x10\n\x08num_docs\x18\x02 \x01(\r\x12\x14\n\x0cnum_segments\x18\x03 \x01(\r\x12\x0e\n\x06schema\x18\x04 \x01(\t\x12)\n\x0cmemory_stats\x18\x05 \x01(\x0b\x32\x13.hermes.MemoryStats\"\x8c\x01\n\x0bMemoryStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x34\n\x0findexing_buffer\x18\x02 \x01(\x0b\x32\x1b.hermes.IndexingBufferStats\x12\x32\n\x0esegment_reader\x18\x03 \x01(\x0b\x32\x1a.hermes.SegmentReaderStats\"\xdf\x01\n\x13IndexingBufferStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x16\n\x0epostings_bytes\x18\x02 \x01(\x04\x12\x1c\n\x14sparse_vectors_bytes\x18\x03 \x01(\x04\x12\x1b\n\x13\x64\x65nse_vectors_bytes\x18\x04 \x01(\x04\x12\x16\n\x0einterner_bytes\x18\x05 \x01(\x04\x12\x1c\n\x14position_index_bytes\x18\x06 \x01(\x04\x12\x14\n\x0cpending_docs\x18\x07 \x01(\r\x12\x14\n\x0cunique_terms\x18\x08 \x01(\r\"\xb7\x01\n\x12SegmentReaderStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x1d\n\x15term_dict_cache_bytes\x18\x02 \x01(\x04\x12\x19\n\x11store_cache_bytes\x18\x03 \x01(\x04\x12\x1a\n\x12sparse_index_bytes\x18\x04 \x01(\x04\x12\x19\n\x11\x64\x65nse_index_bytes\x18\x05 \x01(\x04\x12\x1b\n\x13num_segments_loaded\x18\x06 \x01(\r\"8\n\x12\x43reateIndexRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x0e\n\x06schema\x18\x02 \x01(\t\"&\n\x13\x43reateIndexResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"=\n\nFieldEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue\"3\n\rNamedDocument\x12\"\n\x06\x66ields\x18\x01 \x03(\x0b\x32\x12.hermes.FieldEntry\"Z\n\x1a\x42\x61tchIndexDocumentsRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12(\n\tdocuments\x18\x02 \x03(\x0b\x32\x15.hermes.NamedDocument\"I\n\x1b\x42\x61tchIndexDocumentsResponse\x12\x15\n\rindexed_count\x18\x01 \x01(\r\x12\x13\n\x0b\x65rror_count\x18\x02 \x01(\r\"N\n\x14IndexDocumentRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\"\n\x06\x66ields\x18\x02 \x03(\x0b\x32\x12.hermes.FieldEntry\"/\n\x16IndexDocumentsResponse\x12\x15\n\rindexed_count\x18\x01 \x01(\r\"#\n\rCommitRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"3\n\x0e\x43ommitResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x10\n\x08num_docs\x18\x02 \x01(\r\"\'\n\x11\x46orceMergeRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\";\n\x12\x46orceMergeResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x14\n\x0cnum_segments\x18\x02 \x01(\r\"(\n\x12\x44\x65leteIndexRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"&\n\x13\x44\x65leteIndexResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"\x14\n\x12ListIndexesRequest\"*\n\x13ListIndexesResponse\x12\x13\n\x0bindex_names\x18\x01 \x03(\t*\x81\x01\n\x12MultiValueCombiner\x12\x18\n\x14\x43OMBINER_LOG_SUM_EXP\x10\x00\x12\x10\n\x0c\x43OMBINER_MAX\x10\x01\x12\x10\n\x0c\x43OMBINER_AVG\x10\x02\x12\x10\n\x0c\x43OMBINER_SUM\x10\x03\x12\x1b\n\x17\x43OMBINER_WEIGHTED_TOP_K\x10\x04\x32\xdb\x01\n\rSearchService\x12\x37\n\x06Search\x12\x15.hermes.SearchRequest\x1a\x16.hermes.SearchResponse\x12\x46\n\x0bGetDocument\x12\x1a.hermes.GetDocumentRequest\x1a\x1b.hermes.GetDocumentResponse\x12I\n\x0cGetIndexInfo\x12\x1b.hermes.GetIndexInfoRequest\x1a\x1c.hermes.GetIndexInfoResponse2\x96\x04\n\x0cIndexService\x12\x46\n\x0b\x43reateIndex\x12\x1a.hermes.CreateIndexRequest\x1a\x1b.hermes.CreateIndexResponse\x12P\n\x0eIndexDocuments\x12\x1c.hermes.IndexDocumentRequest\x1a\x1e.hermes.IndexDocumentsResponse(\x01\x12^\n\x13\x42\x61tchIndexDocuments\x12\".hermes.BatchIndexDocumentsRequest\x1a#.hermes.BatchIndexDocumentsResponse\x12\x37\n\x06\x43ommit\x12\x15.hermes.CommitRequest\x1a\x16.hermes.CommitResponse\x12\x43\n\nForceMerge\x12\x19.hermes.ForceMergeRequest\x1a\x1a.hermes.ForceMergeResponse\x12\x46\n\x0b\x44\x65leteIndex\x12\x1a.hermes.DeleteIndexRequest\x1a\x1b.hermes.DeleteIndexResponse\x12\x46\n\x0bListIndexes\x12\x1a.hermes.ListIndexesRequest\x1a\x1b.hermes.ListIndexesResponseb\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'hermes_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ DESCRIPTOR._loaded_options = None
34
+ _globals['_SEARCHHIT_FIELDSENTRY']._loaded_options = None
35
+ _globals['_SEARCHHIT_FIELDSENTRY']._serialized_options = b'8\001'
36
+ _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._loaded_options = None
37
+ _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_options = b'8\001'
38
+ _globals['_MULTIVALUECOMBINER']._serialized_start=3821
39
+ _globals['_MULTIVALUECOMBINER']._serialized_end=3950
40
+ _globals['_QUERY']._serialized_start=25
41
+ _globals['_QUERY']._serialized_end=326
42
+ _globals['_SPARSEVECTORQUERY']._serialized_start=329
43
+ _globals['_SPARSEVECTORQUERY']._serialized_end=555
44
+ _globals['_DENSEVECTORQUERY']._serialized_start=558
45
+ _globals['_DENSEVECTORQUERY']._serialized_end=770
46
+ _globals['_TERMQUERY']._serialized_start=772
47
+ _globals['_TERMQUERY']._serialized_end=812
48
+ _globals['_BOOLEANQUERY']._serialized_start=814
49
+ _globals['_BOOLEANQUERY']._serialized_end=921
50
+ _globals['_BOOSTQUERY']._serialized_start=923
51
+ _globals['_BOOSTQUERY']._serialized_end=980
52
+ _globals['_ALLQUERY']._serialized_start=982
53
+ _globals['_ALLQUERY']._serialized_end=992
54
+ _globals['_MATCHQUERY']._serialized_start=994
55
+ _globals['_MATCHQUERY']._serialized_end=1035
56
+ _globals['_RERANKER']._serialized_start=1038
57
+ _globals['_RERANKER']._serialized_end=1218
58
+ _globals['_SEARCHREQUEST']._serialized_start=1221
59
+ _globals['_SEARCHREQUEST']._serialized_end=1377
60
+ _globals['_SEARCHHIT']._serialized_start=1380
61
+ _globals['_SEARCHHIT']._serialized_end=1582
62
+ _globals['_SEARCHHIT_FIELDSENTRY']._serialized_start=1517
63
+ _globals['_SEARCHHIT_FIELDSENTRY']._serialized_end=1582
64
+ _globals['_ORDINALSCORE']._serialized_start=1584
65
+ _globals['_ORDINALSCORE']._serialized_end=1630
66
+ _globals['_FIELDVALUE']._serialized_start=1633
67
+ _globals['_FIELDVALUE']._serialized_end=1852
68
+ _globals['_SPARSEVECTOR']._serialized_start=1854
69
+ _globals['_SPARSEVECTOR']._serialized_end=1901
70
+ _globals['_DENSEVECTOR']._serialized_start=1903
71
+ _globals['_DENSEVECTOR']._serialized_end=1932
72
+ _globals['_SEARCHRESPONSE']._serialized_start=1934
73
+ _globals['_SEARCHRESPONSE']._serialized_end=2020
74
+ _globals['_GETDOCUMENTREQUEST']._serialized_start=2022
75
+ _globals['_GETDOCUMENTREQUEST']._serialized_end=2078
76
+ _globals['_GETDOCUMENTRESPONSE']._serialized_start=2081
77
+ _globals['_GETDOCUMENTRESPONSE']._serialized_end=2226
78
+ _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_start=1517
79
+ _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_end=1582
80
+ _globals['_GETINDEXINFOREQUEST']._serialized_start=2228
81
+ _globals['_GETINDEXINFOREQUEST']._serialized_end=2269
82
+ _globals['_GETINDEXINFORESPONSE']._serialized_start=2272
83
+ _globals['_GETINDEXINFORESPONSE']._serialized_end=2413
84
+ _globals['_MEMORYSTATS']._serialized_start=2416
85
+ _globals['_MEMORYSTATS']._serialized_end=2556
86
+ _globals['_INDEXINGBUFFERSTATS']._serialized_start=2559
87
+ _globals['_INDEXINGBUFFERSTATS']._serialized_end=2782
88
+ _globals['_SEGMENTREADERSTATS']._serialized_start=2785
89
+ _globals['_SEGMENTREADERSTATS']._serialized_end=2968
90
+ _globals['_CREATEINDEXREQUEST']._serialized_start=2970
91
+ _globals['_CREATEINDEXREQUEST']._serialized_end=3026
92
+ _globals['_CREATEINDEXRESPONSE']._serialized_start=3028
93
+ _globals['_CREATEINDEXRESPONSE']._serialized_end=3066
94
+ _globals['_FIELDENTRY']._serialized_start=3068
95
+ _globals['_FIELDENTRY']._serialized_end=3129
96
+ _globals['_NAMEDDOCUMENT']._serialized_start=3131
97
+ _globals['_NAMEDDOCUMENT']._serialized_end=3182
98
+ _globals['_BATCHINDEXDOCUMENTSREQUEST']._serialized_start=3184
99
+ _globals['_BATCHINDEXDOCUMENTSREQUEST']._serialized_end=3274
100
+ _globals['_BATCHINDEXDOCUMENTSRESPONSE']._serialized_start=3276
101
+ _globals['_BATCHINDEXDOCUMENTSRESPONSE']._serialized_end=3349
102
+ _globals['_INDEXDOCUMENTREQUEST']._serialized_start=3351
103
+ _globals['_INDEXDOCUMENTREQUEST']._serialized_end=3429
104
+ _globals['_INDEXDOCUMENTSRESPONSE']._serialized_start=3431
105
+ _globals['_INDEXDOCUMENTSRESPONSE']._serialized_end=3478
106
+ _globals['_COMMITREQUEST']._serialized_start=3480
107
+ _globals['_COMMITREQUEST']._serialized_end=3515
108
+ _globals['_COMMITRESPONSE']._serialized_start=3517
109
+ _globals['_COMMITRESPONSE']._serialized_end=3568
110
+ _globals['_FORCEMERGEREQUEST']._serialized_start=3570
111
+ _globals['_FORCEMERGEREQUEST']._serialized_end=3609
112
+ _globals['_FORCEMERGERESPONSE']._serialized_start=3611
113
+ _globals['_FORCEMERGERESPONSE']._serialized_end=3670
114
+ _globals['_DELETEINDEXREQUEST']._serialized_start=3672
115
+ _globals['_DELETEINDEXREQUEST']._serialized_end=3712
116
+ _globals['_DELETEINDEXRESPONSE']._serialized_start=3714
117
+ _globals['_DELETEINDEXRESPONSE']._serialized_end=3752
118
+ _globals['_LISTINDEXESREQUEST']._serialized_start=3754
119
+ _globals['_LISTINDEXESREQUEST']._serialized_end=3774
120
+ _globals['_LISTINDEXESRESPONSE']._serialized_start=3776
121
+ _globals['_LISTINDEXESRESPONSE']._serialized_end=3818
122
+ _globals['_SEARCHSERVICE']._serialized_start=3953
123
+ _globals['_SEARCHSERVICE']._serialized_end=4172
124
+ _globals['_INDEXSERVICE']._serialized_start=4175
125
+ _globals['_INDEXSERVICE']._serialized_end=4709
126
+ # @@protoc_insertion_point(module_scope)
@@ -1,124 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # NO CHECKED-IN PROTOBUF GENCODE
4
- # source: hermes.proto
5
- # Protobuf Python Version: 6.31.1
6
- """Generated protocol buffer code."""
7
- from google.protobuf import descriptor as _descriptor
8
- from google.protobuf import descriptor_pool as _descriptor_pool
9
- from google.protobuf import runtime_version as _runtime_version
10
- from google.protobuf import symbol_database as _symbol_database
11
- from google.protobuf.internal import builder as _builder
12
- _runtime_version.ValidateProtobufRuntimeVersion(
13
- _runtime_version.Domain.PUBLIC,
14
- 6,
15
- 31,
16
- 1,
17
- '',
18
- 'hermes.proto'
19
- )
20
- # @@protoc_insertion_point(imports)
21
-
22
- _sym_db = _symbol_database.Default()
23
-
24
-
25
-
26
-
27
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0chermes.proto\x12\x06hermes\"\x88\x02\n\x05Query\x12!\n\x04term\x18\x01 \x01(\x0b\x32\x11.hermes.TermQueryH\x00\x12\'\n\x07\x62oolean\x18\x02 \x01(\x0b\x32\x14.hermes.BooleanQueryH\x00\x12#\n\x05\x62oost\x18\x03 \x01(\x0b\x32\x12.hermes.BoostQueryH\x00\x12\x1f\n\x03\x61ll\x18\x04 \x01(\x0b\x32\x10.hermes.AllQueryH\x00\x12\x32\n\rsparse_vector\x18\x05 \x01(\x0b\x32\x19.hermes.SparseVectorQueryH\x00\x12\x30\n\x0c\x64\x65nse_vector\x18\x06 \x01(\x0b\x32\x18.hermes.DenseVectorQueryH\x00\x42\x07\n\x05query\"\xe2\x01\n\x11SparseVectorQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0f\n\x07indices\x18\x02 \x03(\r\x12\x0e\n\x06values\x18\x03 \x03(\x02\x12\x0c\n\x04text\x18\x04 \x01(\t\x12,\n\x08\x63ombiner\x18\x05 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x13\n\x0bheap_factor\x18\x06 \x01(\x02\x12\x1c\n\x14\x63ombiner_temperature\x18\x07 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x08 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\t \x01(\x02\"\xd4\x01\n\x10\x44\x65nseVectorQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0e\n\x06vector\x18\x02 \x03(\x02\x12\x0e\n\x06nprobe\x18\x03 \x01(\r\x12\x15\n\rrerank_factor\x18\x04 \x01(\r\x12,\n\x08\x63ombiner\x18\x05 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x1c\n\x14\x63ombiner_temperature\x18\x06 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x07 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\x08 \x01(\x02\"(\n\tTermQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04term\x18\x02 \x01(\t\"k\n\x0c\x42ooleanQuery\x12\x1b\n\x04must\x18\x01 \x03(\x0b\x32\r.hermes.Query\x12\x1d\n\x06should\x18\x02 \x03(\x0b\x32\r.hermes.Query\x12\x1f\n\x08must_not\x18\x03 \x03(\x0b\x32\r.hermes.Query\"9\n\nBoostQuery\x12\x1c\n\x05query\x18\x01 \x01(\x0b\x32\r.hermes.Query\x12\r\n\x05\x62oost\x18\x02 \x01(\x02\"\n\n\x08\x41llQuery\"\xb4\x01\n\x08Reranker\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0e\n\x06vector\x18\x02 \x03(\x02\x12\r\n\x05limit\x18\x03 \x01(\r\x12,\n\x08\x63ombiner\x18\x04 \x01(\x0e\x32\x1a.hermes.MultiValueCombiner\x12\x1c\n\x14\x63ombiner_temperature\x18\x05 \x01(\x02\x12\x16\n\x0e\x63ombiner_top_k\x18\x06 \x01(\r\x12\x16\n\x0e\x63ombiner_decay\x18\x07 \x01(\x02\"\x9c\x01\n\rSearchRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x1c\n\x05query\x18\x02 \x01(\x0b\x32\r.hermes.Query\x12\r\n\x05limit\x18\x03 \x01(\r\x12\x0e\n\x06offset\x18\x04 \x01(\r\x12\x16\n\x0e\x66ields_to_load\x18\x05 \x03(\t\x12\"\n\x08reranker\x18\x06 \x01(\x0b\x32\x10.hermes.Reranker\"\xca\x01\n\tSearchHit\x12\x0e\n\x06\x64oc_id\x18\x01 \x01(\r\x12\r\n\x05score\x18\x02 \x01(\x02\x12-\n\x06\x66ields\x18\x03 \x03(\x0b\x32\x1d.hermes.SearchHit.FieldsEntry\x12,\n\x0eordinal_scores\x18\x04 \x03(\x0b\x32\x14.hermes.OrdinalScore\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue:\x02\x38\x01\".\n\x0cOrdinalScore\x12\x0f\n\x07ordinal\x18\x01 \x01(\r\x12\r\n\x05score\x18\x02 \x01(\x02\"\xdb\x01\n\nFieldValue\x12\x0e\n\x04text\x18\x01 \x01(\tH\x00\x12\r\n\x03u64\x18\x02 \x01(\x04H\x00\x12\r\n\x03i64\x18\x03 \x01(\x03H\x00\x12\r\n\x03\x66\x36\x34\x18\x04 \x01(\x01H\x00\x12\x15\n\x0b\x62ytes_value\x18\x05 \x01(\x0cH\x00\x12-\n\rsparse_vector\x18\x06 \x01(\x0b\x32\x14.hermes.SparseVectorH\x00\x12+\n\x0c\x64\x65nse_vector\x18\x07 \x01(\x0b\x32\x13.hermes.DenseVectorH\x00\x12\x14\n\njson_value\x18\x08 \x01(\tH\x00\x42\x07\n\x05value\"/\n\x0cSparseVector\x12\x0f\n\x07indices\x18\x01 \x03(\r\x12\x0e\n\x06values\x18\x02 \x03(\x02\"\x1d\n\x0b\x44\x65nseVector\x12\x0e\n\x06values\x18\x01 \x03(\x02\"V\n\x0eSearchResponse\x12\x1f\n\x04hits\x18\x01 \x03(\x0b\x32\x11.hermes.SearchHit\x12\x12\n\ntotal_hits\x18\x02 \x01(\r\x12\x0f\n\x07took_ms\x18\x03 \x01(\x04\"8\n\x12GetDocumentRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x0e\n\x06\x64oc_id\x18\x02 \x01(\r\"\x91\x01\n\x13GetDocumentResponse\x12\x37\n\x06\x66ields\x18\x01 \x03(\x0b\x32\'.hermes.GetDocumentResponse.FieldsEntry\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue:\x02\x38\x01\")\n\x13GetIndexInfoRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"\x8d\x01\n\x14GetIndexInfoResponse\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x10\n\x08num_docs\x18\x02 \x01(\r\x12\x14\n\x0cnum_segments\x18\x03 \x01(\r\x12\x0e\n\x06schema\x18\x04 \x01(\t\x12)\n\x0cmemory_stats\x18\x05 \x01(\x0b\x32\x13.hermes.MemoryStats\"\x8c\x01\n\x0bMemoryStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x34\n\x0findexing_buffer\x18\x02 \x01(\x0b\x32\x1b.hermes.IndexingBufferStats\x12\x32\n\x0esegment_reader\x18\x03 \x01(\x0b\x32\x1a.hermes.SegmentReaderStats\"\xdf\x01\n\x13IndexingBufferStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x16\n\x0epostings_bytes\x18\x02 \x01(\x04\x12\x1c\n\x14sparse_vectors_bytes\x18\x03 \x01(\x04\x12\x1b\n\x13\x64\x65nse_vectors_bytes\x18\x04 \x01(\x04\x12\x16\n\x0einterner_bytes\x18\x05 \x01(\x04\x12\x1c\n\x14position_index_bytes\x18\x06 \x01(\x04\x12\x14\n\x0cpending_docs\x18\x07 \x01(\r\x12\x14\n\x0cunique_terms\x18\x08 \x01(\r\"\xb7\x01\n\x12SegmentReaderStats\x12\x13\n\x0btotal_bytes\x18\x01 \x01(\x04\x12\x1d\n\x15term_dict_cache_bytes\x18\x02 \x01(\x04\x12\x19\n\x11store_cache_bytes\x18\x03 \x01(\x04\x12\x1a\n\x12sparse_index_bytes\x18\x04 \x01(\x04\x12\x19\n\x11\x64\x65nse_index_bytes\x18\x05 \x01(\x04\x12\x1b\n\x13num_segments_loaded\x18\x06 \x01(\r\"8\n\x12\x43reateIndexRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x0e\n\x06schema\x18\x02 \x01(\t\"&\n\x13\x43reateIndexResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"=\n\nFieldEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.hermes.FieldValue\"3\n\rNamedDocument\x12\"\n\x06\x66ields\x18\x01 \x03(\x0b\x32\x12.hermes.FieldEntry\"Z\n\x1a\x42\x61tchIndexDocumentsRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12(\n\tdocuments\x18\x02 \x03(\x0b\x32\x15.hermes.NamedDocument\"I\n\x1b\x42\x61tchIndexDocumentsResponse\x12\x15\n\rindexed_count\x18\x01 \x01(\r\x12\x13\n\x0b\x65rror_count\x18\x02 \x01(\r\"N\n\x14IndexDocumentRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\"\n\x06\x66ields\x18\x02 \x03(\x0b\x32\x12.hermes.FieldEntry\"/\n\x16IndexDocumentsResponse\x12\x15\n\rindexed_count\x18\x01 \x01(\r\"#\n\rCommitRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"3\n\x0e\x43ommitResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x10\n\x08num_docs\x18\x02 \x01(\r\"\'\n\x11\x46orceMergeRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\";\n\x12\x46orceMergeResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x14\n\x0cnum_segments\x18\x02 \x01(\r\"(\n\x12\x44\x65leteIndexRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\"&\n\x13\x44\x65leteIndexResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"\x14\n\x12ListIndexesRequest\"*\n\x13ListIndexesResponse\x12\x13\n\x0bindex_names\x18\x01 \x03(\t*\x81\x01\n\x12MultiValueCombiner\x12\x18\n\x14\x43OMBINER_LOG_SUM_EXP\x10\x00\x12\x10\n\x0c\x43OMBINER_MAX\x10\x01\x12\x10\n\x0c\x43OMBINER_AVG\x10\x02\x12\x10\n\x0c\x43OMBINER_SUM\x10\x03\x12\x1b\n\x17\x43OMBINER_WEIGHTED_TOP_K\x10\x04\x32\xdb\x01\n\rSearchService\x12\x37\n\x06Search\x12\x15.hermes.SearchRequest\x1a\x16.hermes.SearchResponse\x12\x46\n\x0bGetDocument\x12\x1a.hermes.GetDocumentRequest\x1a\x1b.hermes.GetDocumentResponse\x12I\n\x0cGetIndexInfo\x12\x1b.hermes.GetIndexInfoRequest\x1a\x1c.hermes.GetIndexInfoResponse2\x96\x04\n\x0cIndexService\x12\x46\n\x0b\x43reateIndex\x12\x1a.hermes.CreateIndexRequest\x1a\x1b.hermes.CreateIndexResponse\x12P\n\x0eIndexDocuments\x12\x1c.hermes.IndexDocumentRequest\x1a\x1e.hermes.IndexDocumentsResponse(\x01\x12^\n\x13\x42\x61tchIndexDocuments\x12\".hermes.BatchIndexDocumentsRequest\x1a#.hermes.BatchIndexDocumentsResponse\x12\x37\n\x06\x43ommit\x12\x15.hermes.CommitRequest\x1a\x16.hermes.CommitResponse\x12\x43\n\nForceMerge\x12\x19.hermes.ForceMergeRequest\x1a\x1a.hermes.ForceMergeResponse\x12\x46\n\x0b\x44\x65leteIndex\x12\x1a.hermes.DeleteIndexRequest\x1a\x1b.hermes.DeleteIndexResponse\x12\x46\n\x0bListIndexes\x12\x1a.hermes.ListIndexesRequest\x1a\x1b.hermes.ListIndexesResponseb\x06proto3')
28
-
29
- _globals = globals()
30
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'hermes_pb2', _globals)
32
- if not _descriptor._USE_C_DESCRIPTORS:
33
- DESCRIPTOR._loaded_options = None
34
- _globals['_SEARCHHIT_FIELDSENTRY']._loaded_options = None
35
- _globals['_SEARCHHIT_FIELDSENTRY']._serialized_options = b'8\001'
36
- _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._loaded_options = None
37
- _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_options = b'8\001'
38
- _globals['_MULTIVALUECOMBINER']._serialized_start=3741
39
- _globals['_MULTIVALUECOMBINER']._serialized_end=3870
40
- _globals['_QUERY']._serialized_start=25
41
- _globals['_QUERY']._serialized_end=289
42
- _globals['_SPARSEVECTORQUERY']._serialized_start=292
43
- _globals['_SPARSEVECTORQUERY']._serialized_end=518
44
- _globals['_DENSEVECTORQUERY']._serialized_start=521
45
- _globals['_DENSEVECTORQUERY']._serialized_end=733
46
- _globals['_TERMQUERY']._serialized_start=735
47
- _globals['_TERMQUERY']._serialized_end=775
48
- _globals['_BOOLEANQUERY']._serialized_start=777
49
- _globals['_BOOLEANQUERY']._serialized_end=884
50
- _globals['_BOOSTQUERY']._serialized_start=886
51
- _globals['_BOOSTQUERY']._serialized_end=943
52
- _globals['_ALLQUERY']._serialized_start=945
53
- _globals['_ALLQUERY']._serialized_end=955
54
- _globals['_RERANKER']._serialized_start=958
55
- _globals['_RERANKER']._serialized_end=1138
56
- _globals['_SEARCHREQUEST']._serialized_start=1141
57
- _globals['_SEARCHREQUEST']._serialized_end=1297
58
- _globals['_SEARCHHIT']._serialized_start=1300
59
- _globals['_SEARCHHIT']._serialized_end=1502
60
- _globals['_SEARCHHIT_FIELDSENTRY']._serialized_start=1437
61
- _globals['_SEARCHHIT_FIELDSENTRY']._serialized_end=1502
62
- _globals['_ORDINALSCORE']._serialized_start=1504
63
- _globals['_ORDINALSCORE']._serialized_end=1550
64
- _globals['_FIELDVALUE']._serialized_start=1553
65
- _globals['_FIELDVALUE']._serialized_end=1772
66
- _globals['_SPARSEVECTOR']._serialized_start=1774
67
- _globals['_SPARSEVECTOR']._serialized_end=1821
68
- _globals['_DENSEVECTOR']._serialized_start=1823
69
- _globals['_DENSEVECTOR']._serialized_end=1852
70
- _globals['_SEARCHRESPONSE']._serialized_start=1854
71
- _globals['_SEARCHRESPONSE']._serialized_end=1940
72
- _globals['_GETDOCUMENTREQUEST']._serialized_start=1942
73
- _globals['_GETDOCUMENTREQUEST']._serialized_end=1998
74
- _globals['_GETDOCUMENTRESPONSE']._serialized_start=2001
75
- _globals['_GETDOCUMENTRESPONSE']._serialized_end=2146
76
- _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_start=1437
77
- _globals['_GETDOCUMENTRESPONSE_FIELDSENTRY']._serialized_end=1502
78
- _globals['_GETINDEXINFOREQUEST']._serialized_start=2148
79
- _globals['_GETINDEXINFOREQUEST']._serialized_end=2189
80
- _globals['_GETINDEXINFORESPONSE']._serialized_start=2192
81
- _globals['_GETINDEXINFORESPONSE']._serialized_end=2333
82
- _globals['_MEMORYSTATS']._serialized_start=2336
83
- _globals['_MEMORYSTATS']._serialized_end=2476
84
- _globals['_INDEXINGBUFFERSTATS']._serialized_start=2479
85
- _globals['_INDEXINGBUFFERSTATS']._serialized_end=2702
86
- _globals['_SEGMENTREADERSTATS']._serialized_start=2705
87
- _globals['_SEGMENTREADERSTATS']._serialized_end=2888
88
- _globals['_CREATEINDEXREQUEST']._serialized_start=2890
89
- _globals['_CREATEINDEXREQUEST']._serialized_end=2946
90
- _globals['_CREATEINDEXRESPONSE']._serialized_start=2948
91
- _globals['_CREATEINDEXRESPONSE']._serialized_end=2986
92
- _globals['_FIELDENTRY']._serialized_start=2988
93
- _globals['_FIELDENTRY']._serialized_end=3049
94
- _globals['_NAMEDDOCUMENT']._serialized_start=3051
95
- _globals['_NAMEDDOCUMENT']._serialized_end=3102
96
- _globals['_BATCHINDEXDOCUMENTSREQUEST']._serialized_start=3104
97
- _globals['_BATCHINDEXDOCUMENTSREQUEST']._serialized_end=3194
98
- _globals['_BATCHINDEXDOCUMENTSRESPONSE']._serialized_start=3196
99
- _globals['_BATCHINDEXDOCUMENTSRESPONSE']._serialized_end=3269
100
- _globals['_INDEXDOCUMENTREQUEST']._serialized_start=3271
101
- _globals['_INDEXDOCUMENTREQUEST']._serialized_end=3349
102
- _globals['_INDEXDOCUMENTSRESPONSE']._serialized_start=3351
103
- _globals['_INDEXDOCUMENTSRESPONSE']._serialized_end=3398
104
- _globals['_COMMITREQUEST']._serialized_start=3400
105
- _globals['_COMMITREQUEST']._serialized_end=3435
106
- _globals['_COMMITRESPONSE']._serialized_start=3437
107
- _globals['_COMMITRESPONSE']._serialized_end=3488
108
- _globals['_FORCEMERGEREQUEST']._serialized_start=3490
109
- _globals['_FORCEMERGEREQUEST']._serialized_end=3529
110
- _globals['_FORCEMERGERESPONSE']._serialized_start=3531
111
- _globals['_FORCEMERGERESPONSE']._serialized_end=3590
112
- _globals['_DELETEINDEXREQUEST']._serialized_start=3592
113
- _globals['_DELETEINDEXREQUEST']._serialized_end=3632
114
- _globals['_DELETEINDEXRESPONSE']._serialized_start=3634
115
- _globals['_DELETEINDEXRESPONSE']._serialized_end=3672
116
- _globals['_LISTINDEXESREQUEST']._serialized_start=3674
117
- _globals['_LISTINDEXESREQUEST']._serialized_end=3694
118
- _globals['_LISTINDEXESRESPONSE']._serialized_start=3696
119
- _globals['_LISTINDEXESRESPONSE']._serialized_end=3738
120
- _globals['_SEARCHSERVICE']._serialized_start=3873
121
- _globals['_SEARCHSERVICE']._serialized_end=4092
122
- _globals['_INDEXSERVICE']._serialized_start=4095
123
- _globals['_INDEXSERVICE']._serialized_end=4629
124
- # @@protoc_insertion_point(module_scope)