langroid 0.16.5__py3-none-any.whl → 0.16.7__py3-none-any.whl

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.
Files changed (80) hide show
  1. langroid/agent/md_tool_message_grammar.py +455 -0
  2. langroid/agent/tools/code_file_tool_parse.py +150 -0
  3. langroid/agent/tools/code_file_tool_pyparsing.py +194 -0
  4. langroid/agent/tools/code_file_tool_pyparsing2.py +199 -0
  5. langroid/agent/tools/formatted_model_custom.py +150 -0
  6. langroid/agent/tools/formatted_model_custom2.py +168 -0
  7. langroid/agent/tools/formatted_model_custom3.py +279 -0
  8. langroid/agent/tools/formatted_model_custom4.py +395 -0
  9. langroid/agent/tools/formatted_model_jinja.py +133 -0
  10. langroid/agent/tools/formatted_model_jinja.py-e +122 -0
  11. langroid/agent/tools/formatted_model_jinja2.py +145 -0
  12. langroid/agent/tools/formatted_model_jinja2.py-e +135 -0
  13. langroid/agent/tools/formatted_model_lark.py +0 -0
  14. langroid/agent/tools/formatted_model_lark2.py +168 -0
  15. langroid/agent/tools/formatted_model_parse.py +105 -0
  16. langroid/agent/tools/formatted_model_parse.py-e +98 -0
  17. langroid/agent/tools/formatted_model_parse2.py +113 -0
  18. langroid/agent/tools/formatted_model_parse2.py-e +109 -0
  19. langroid/agent/tools/formatted_model_parse3.py +114 -0
  20. langroid/agent/tools/formatted_model_parse3.py-e +110 -0
  21. langroid/agent/tools/formatted_model_parsimon.py +194 -0
  22. langroid/agent/tools/formatted_model_parsimon.py-e +186 -0
  23. langroid/agent/tools/formatted_model_pyparsing.py +169 -0
  24. langroid/agent/tools/formatted_model_pyparsing.py-e +149 -0
  25. langroid/agent/tools/formatted_model_pyparsing2.py +159 -0
  26. langroid/agent/tools/formatted_model_pyparsing2.py-e +143 -0
  27. langroid/agent/tools/formatted_model_pyparsing3.py +133 -0
  28. langroid/agent/tools/formatted_model_pyparsing3.py-e +121 -0
  29. langroid/agent/tools/formatted_model_pyparsing4.py +213 -0
  30. langroid/agent/tools/formatted_model_pyparsing4.py-e +176 -0
  31. langroid/agent/tools/formatted_model_pyparsing5.py +173 -0
  32. langroid/agent/tools/formatted_model_pyparsing5.py-e +142 -0
  33. langroid/agent/tools/formatted_model_regex.py +246 -0
  34. langroid/agent/tools/formatted_model_regex.py-e +248 -0
  35. langroid/agent/tools/formatted_model_regex2.py +250 -0
  36. langroid/agent/tools/formatted_model_regex2.py-e +253 -0
  37. langroid/agent/tools/formatted_model_tatsu.py +172 -0
  38. langroid/agent/tools/formatted_model_tatsu.py-e +160 -0
  39. langroid/agent/tools/formatted_model_template.py +217 -0
  40. langroid/agent/tools/formatted_model_template.py-e +200 -0
  41. langroid/agent/tools/formatted_model_xml.py +178 -0
  42. langroid/agent/tools/formatted_model_xml2.py +178 -0
  43. langroid/agent/tools/formatted_model_xml3.py +132 -0
  44. langroid/agent/tools/formatted_model_xml4.py +130 -0
  45. langroid/agent/tools/formatted_model_xml5.py +130 -0
  46. langroid/agent/tools/formatted_model_xml6.py +113 -0
  47. langroid/agent/tools/formatted_model_xml7.py +117 -0
  48. langroid/agent/tools/formatted_model_xml8.py +164 -0
  49. langroid/agent/tools/generic_tool.py +165 -0
  50. langroid/agent/tools/generic_tool_tatsu.py +275 -0
  51. langroid/agent/tools/grammar_based_model.py +132 -0
  52. langroid/agent/tools/grammar_based_model.py-e +128 -0
  53. langroid/agent/tools/grammar_based_model_lark.py +156 -0
  54. langroid/agent/tools/grammar_based_model_lark.py-e +153 -0
  55. langroid/agent/tools/grammar_based_model_parse.py +86 -0
  56. langroid/agent/tools/grammar_based_model_parse.py-e +80 -0
  57. langroid/agent/tools/grammar_based_model_parsimonious.py +129 -0
  58. langroid/agent/tools/grammar_based_model_parsimonious.py-e +120 -0
  59. langroid/agent/tools/grammar_based_model_pyparsing.py +105 -0
  60. langroid/agent/tools/grammar_based_model_pyparsing.py-e +103 -0
  61. langroid/agent/tools/grammar_based_model_regex.py +139 -0
  62. langroid/agent/tools/grammar_based_model_regex.py-e +130 -0
  63. langroid/agent/tools/grammar_based_model_regex2.py +124 -0
  64. langroid/agent/tools/grammar_based_model_regex2.py-e +116 -0
  65. langroid/agent/tools/grammar_based_model_tatsu.py +80 -0
  66. langroid/agent/tools/grammar_based_model_tatsu.py-e +77 -0
  67. langroid/agent/tools/lark_earley_example.py +135 -0
  68. langroid/agent/tools/lark_earley_example.py-e +117 -0
  69. langroid/agent/tools/lark_example.py +72 -0
  70. langroid/agent/tools/parse_example.py +76 -0
  71. langroid/agent/tools/parse_example2.py +87 -0
  72. langroid/agent/tools/parse_example3.py +42 -0
  73. langroid/agent/tools/parse_test.py +791 -0
  74. langroid/agent/xml_tool_message.py +106 -0
  75. langroid/language_models/openai_gpt.py +6 -1
  76. {langroid-0.16.5.dist-info → langroid-0.16.7.dist-info}/METADATA +1 -1
  77. {langroid-0.16.5.dist-info → langroid-0.16.7.dist-info}/RECORD +80 -6
  78. pyproject.toml +1 -1
  79. {langroid-0.16.5.dist-info → langroid-0.16.7.dist-info}/LICENSE +0 -0
  80. {langroid-0.16.5.dist-info → langroid-0.16.7.dist-info}/WHEEL +0 -0
@@ -0,0 +1,106 @@
1
+ from typing import get_type_hints
2
+
3
+ from lxml import etree
4
+
5
+ from langroid.agent.tool_message import ToolMessage
6
+
7
+
8
+ class XmlToolMessage(ToolMessage):
9
+ """
10
+ Abstract class for tools formatted using XML instead of JSON.
11
+ """
12
+
13
+ request: str
14
+ purpose: str
15
+
16
+ _allow_llm_use = True
17
+
18
+ class Config(ToolMessage.Config):
19
+ root_element = "tool"
20
+
21
+ @classmethod
22
+ def parse(cls, formatted_string: str) -> "XmlToolMessage":
23
+ parser = etree.XMLParser(strip_cdata=False)
24
+ root = etree.fromstring(formatted_string.encode("utf-8"), parser=parser)
25
+ if root.tag != cls.Config.root_element:
26
+ raise ValueError(
27
+ f"Invalid root element: expected {cls.Config.root_element}, got {root.tag}"
28
+ )
29
+
30
+ data = {}
31
+ type_hints = get_type_hints(cls)
32
+ exclude_fields = cls.Config.schema_extra.get("exclude", set())
33
+ for elem in root:
34
+ if elem.tag not in exclude_fields:
35
+ field_type = type_hints.get(elem.tag, str)
36
+ if elem.tag == "code":
37
+ data[elem.tag] = elem.text if elem.text else ""
38
+ else:
39
+ value = elem.text.strip() if elem.text else ""
40
+ if field_type == int:
41
+ data[elem.tag] = int(value)
42
+ elif field_type == float:
43
+ data[elem.tag] = float(value)
44
+ elif field_type == bool:
45
+ data[elem.tag] = value.lower() in ("true", "1", "yes")
46
+ else:
47
+ data[elem.tag] = value
48
+
49
+ return cls(**data)
50
+
51
+ @classmethod
52
+ def instructions(cls) -> str:
53
+ fields = [
54
+ f
55
+ for f in cls.__fields__.keys()
56
+ if f not in cls.Config.schema_extra.get("exclude", set())
57
+ ]
58
+
59
+ preamble = "Placeholders:\n"
60
+ for field in fields:
61
+ preamble += f"{field.upper()} = [value for {field}]\n"
62
+
63
+ example = f"Formatting example:\n\n<{cls.Config.root_element}>\n"
64
+ for field in fields:
65
+ if field == "code":
66
+ example += f" <{field}><![CDATA[{{{field.upper()}}}]]></{field}>\n"
67
+ else:
68
+ example += f" <{field}>{{{field.upper()}}}</{field}>\n"
69
+ example += f"</{cls.Config.root_element}>"
70
+
71
+ return f"{preamble}\n{example}"
72
+
73
+ @classmethod
74
+ def format(cls, instance: "XmlToolMessage") -> str:
75
+ root = etree.Element(cls.Config.root_element)
76
+ exclude_fields = cls.Config.schema_extra.get("exclude", set())
77
+ for name, value in instance.dict().items():
78
+ if name not in exclude_fields:
79
+ elem = etree.SubElement(root, name)
80
+ if name == "code":
81
+ elem.text = etree.CDATA(str(value))
82
+ else:
83
+ elem.text = str(value)
84
+ return etree.tostring(root, encoding="unicode", pretty_print=True)
85
+
86
+ @classmethod
87
+ def find_candidates(cls, text: str) -> str:
88
+ root_tag = cls.Config.root_element
89
+ opening_tag = f"<{root_tag}>"
90
+ closing_tag = f"</{root_tag}>"
91
+
92
+ candidates = []
93
+ start = 0
94
+ while True:
95
+ start = text.find(opening_tag, start)
96
+ if start == -1:
97
+ break
98
+ end = text.find(closing_tag, start)
99
+ if end == -1:
100
+ # For the last candidate, allow missing closing tag
101
+ candidates.append(text[start:])
102
+ break
103
+ candidates.append(text[start : end + len(closing_tag)])
104
+ start = end + len(closing_tag)
105
+
106
+ return "\n".join(candidates)
@@ -230,6 +230,8 @@ class OpenAICallParams(BaseModel):
230
230
  Various params that can be sent to an OpenAI API chat-completion call.
231
231
  When specified, any param here overrides the one with same name in the
232
232
  OpenAIGPTConfig.
233
+ See OpenAI API Reference for details on the params:
234
+ https://platform.openai.com/docs/api-reference/chat
233
235
  """
234
236
 
235
237
  max_tokens: int = 1024
@@ -239,7 +241,7 @@ class OpenAICallParams(BaseModel):
239
241
  response_format: Dict[str, str] | None = None
240
242
  logit_bias: Dict[int, float] | None = None # token_id -> bias
241
243
  logprobs: bool = False
242
- top_p: int | None = 1
244
+ top_p: float | None = 1.0
243
245
  top_logprobs: int | None = None # if int, requires logprobs=True
244
246
  n: int = 1 # how many completions to generate (n > 1 is NOT handled now)
245
247
  stop: str | List[str] | None = None # (list of) stop sequence(s)
@@ -327,6 +329,9 @@ class OpenAIGPTConfig(LLMConfig):
327
329
  raise LangroidImportError("litellm", "litellm")
328
330
  litellm.telemetry = False
329
331
  litellm.drop_params = True # drop un-supported params without crashing
332
+ # modify params to fit the model expectations, and avoid crashing
333
+ # (e.g. anthropic doesn't like first msg to be system msg)
334
+ litellm.modify_params = True
330
335
  self.seed = None # some local mdls don't support seed
331
336
  keys_dict = litellm.utils.validate_environment(self.chat_model)
332
337
  missing_keys = keys_dict.get("missing_keys", [])
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: langroid
3
- Version: 0.16.5
3
+ Version: 0.16.7
4
4
  Summary: Harness LLMs with Multi-Agent Programming
5
5
  License: MIT
6
6
  Author: Prasad Chalasani
@@ -8,6 +8,7 @@ langroid/agent/chat_agent.py,sha256=C9ashHHnyyjFgAXU6CkWZHIHVjXbdBo7PAlv54_Jvss,
8
8
  langroid/agent/chat_document.py,sha256=PuGQH2sToNnUH4oKt4rsNpcXoBfCW4G-7Ca6C3RFOsI,17025
9
9
  langroid/agent/helpers.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  langroid/agent/junk,sha256=LxfuuW7Cijsg0szAzT81OjWWv1PMNI-6w_-DspVIO2s,339
11
+ langroid/agent/md_tool_message_grammar.py,sha256=shr5Tk_U69Peywg64KOAzUb63xUGiDO5PNCraRkrI10,14940
11
12
  langroid/agent/openai_assistant.py,sha256=2rjCZw45ysNBEGNzQM4uf0bTC4KkatGYAWcVcW4xcek,34337
12
13
  langroid/agent/special/__init__.py,sha256=gik_Xtm_zV7U9s30Mn8UX3Gyuy4jTjQe9zjiE3HWmEo,1273
13
14
  langroid/agent/special/doc_chat_agent.py,sha256=r1uPunYf2lQcqYQ4fsD8Q5gB9cZyf7cn0KPcR_CLtrU,59065
@@ -36,19 +37,92 @@ langroid/agent/structured_message.py,sha256=y7pud1EgRNeTFZlJmBkLmwME3yQJ_IYik-Xd
36
37
  langroid/agent/task.py,sha256=GDnP24wsoXSZbwlG0g-OmKWM_pY-G4KGUgnCEbCsrYM,84660
37
38
  langroid/agent/tool_message.py,sha256=xBTEMxbv8dwMFRWKxfh2CswjR6KfZFbCyjy1PkqcSs0,10493
38
39
  langroid/agent/tools/__init__.py,sha256=IMgCte-_ZIvCkozGQmvMqxIw7_nKLKzD78ccJL1bnQU,804
40
+ langroid/agent/tools/code_file_tool_parse.py,sha256=nuoXc7eD-bYxG55mf2tZ4o-wL1ZzUymK795c5rZTVx8,4786
41
+ langroid/agent/tools/code_file_tool_pyparsing.py,sha256=ZUJGeWZJ1UA353Q7eDOK30JlEH0UetPsUwJsXPE5GMo,6336
42
+ langroid/agent/tools/code_file_tool_pyparsing2.py,sha256=DE-uWtyIFBh-G2Nj43LXEO8X15vF-lLVHc15Xj4jjhQ,5761
39
43
  langroid/agent/tools/duckduckgo_search_tool.py,sha256=NhsCaGZkdv28nja7yveAhSK_w6l_Ftym8agbrdzqgfo,1935
40
44
  langroid/agent/tools/extract_tool.py,sha256=u5lL9rKBzaLBOrRyLnTAZ97pQ1uxyLP39XsWMnpaZpw,3789
45
+ langroid/agent/tools/formatted_model_custom.py,sha256=Zbqim8SxuIWscbIrOAlTrQzL4ziJMtmqFvT9uh_3DIE,4278
46
+ langroid/agent/tools/formatted_model_custom2.py,sha256=hQ1AsZSqCCPb1K2N5Oa-XDTPmsNsLZSTpj-J6EzJrMY,5547
47
+ langroid/agent/tools/formatted_model_custom3.py,sha256=rtI9n2HXlaCb4xEYHUH3qHCuMwDLjOS0rrPi8ialYdk,9491
48
+ langroid/agent/tools/formatted_model_custom4.py,sha256=Uz4GRzqZrtt6jv2UZ1xs9O3qtQHqVTAL70EMFYLeoig,13122
49
+ langroid/agent/tools/formatted_model_jinja.py,sha256=oeohyL_mKL0iSLpqd0C53f1pFr36Hv7EpLe9U-3ucmc,3496
50
+ langroid/agent/tools/formatted_model_jinja.py-e,sha256=JICiI_L4sLRFGDpndzSrCwcoZGFZo4oWIx2rXcVP7ws,3451
51
+ langroid/agent/tools/formatted_model_jinja2.py,sha256=rA3Gtmu25vzsNfVZgetJm9negqdc0bVL8jgCDtliV1s,3516
52
+ langroid/agent/tools/formatted_model_jinja2.py-e,sha256=6ux26NPP0GkwMaDdFwBFdVLYv0gxBO3YNrf3_hRBoro,3447
53
+ langroid/agent/tools/formatted_model_lark.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
+ langroid/agent/tools/formatted_model_lark2.py,sha256=Or1oSSNB9RM52ctnQmiDinDbmDrXUYwbLyFmBwWtGAk,4603
55
+ langroid/agent/tools/formatted_model_parse.py,sha256=Azo1bO1DjMThVsYjxYk-80mdK86MGO6ixcrbec1KDig,2938
56
+ langroid/agent/tools/formatted_model_parse.py-e,sha256=D0gA8I7paSiAWrZwujcyhJDjil4Y4G0rBTqV03Qh82o,2907
57
+ langroid/agent/tools/formatted_model_parse2.py,sha256=hCnmgiJML9yJYKpLJCquRQj5GzgEoCGwAw5Fw4FRFDs,2721
58
+ langroid/agent/tools/formatted_model_parse2.py-e,sha256=F2avICGPMBYd731bmhreBym1hsKbswjeVpAWf0W5rzQ,2709
59
+ langroid/agent/tools/formatted_model_parse3.py,sha256=x43Ag3jvdQ7Xn_m7Qc5QAL8EYVDzQxuL9wQB282FuHQ,2741
60
+ langroid/agent/tools/formatted_model_parse3.py-e,sha256=s3YxHF89qlBoS4v_m6PdEEFfN8ATNlgBHkkb4fkZ4tc,2729
61
+ langroid/agent/tools/formatted_model_parsimon.py,sha256=2blN778yEc9-G-R6Xp84-yIJi3TnqmYgkTVEULOsGTk,5476
62
+ langroid/agent/tools/formatted_model_parsimon.py-e,sha256=y9YD_llbrAGOlAhWZ4GPsb7za0k1hko7Fp_TBQixrKU,5447
63
+ langroid/agent/tools/formatted_model_pyparsing.py,sha256=FjVWnd6nxDd494Fp0-xZzupsvXvWYwhVhi0vYSv4C5E,4578
64
+ langroid/agent/tools/formatted_model_pyparsing.py-e,sha256=iNNNaMR0tUGp42XwCzNZ3swQQJkd7mlZZqFjNchrlk4,4458
65
+ langroid/agent/tools/formatted_model_pyparsing2.py,sha256=pvWxRVcqmGL9H01fdhi2ZzQwh2Urw-j8LBs3p4x9O4w,4339
66
+ langroid/agent/tools/formatted_model_pyparsing2.py-e,sha256=eSzxvapLgCDlD04Z7Abol6rje5DW9OAPUhzCkKcE_Yg,4322
67
+ langroid/agent/tools/formatted_model_pyparsing3.py,sha256=9mSqTce4gV1vefrUTfHFDwebWr-PVbNT1TQA4GJ06xI,3547
68
+ langroid/agent/tools/formatted_model_pyparsing3.py-e,sha256=V5eLPsw67IgEkTW1jRndS38jcd-2USsDfpkVY2nocIQ,3565
69
+ langroid/agent/tools/formatted_model_pyparsing4.py,sha256=UEUTCtgAHjmOSNweLEMMfoeTrM4VD6vUxI3TSh3DeJc,6393
70
+ langroid/agent/tools/formatted_model_pyparsing4.py-e,sha256=advqwI1g651LGzTedpj8E_gQLisz3Kgf5wVtib2z3tQ,6029
71
+ langroid/agent/tools/formatted_model_pyparsing5.py,sha256=2Dbfv1IVqdynb4xEDOS45eczPndwJTtvUsrGdJslTko,4462
72
+ langroid/agent/tools/formatted_model_pyparsing5.py-e,sha256=QIqwcHMWOGRFrna_4Q2OOcB_xT4ZOXOEAjZFD4Omzws,4257
73
+ langroid/agent/tools/formatted_model_regex.py,sha256=6pEyjKqh7K-KF409aJJj2UBIa0XotaRmT6eldSPMUZw,6252
74
+ langroid/agent/tools/formatted_model_regex.py-e,sha256=ijFGHBKFIC2elMHGxaViva8sPi1HZNtJUeTyQE9jb0o,6400
75
+ langroid/agent/tools/formatted_model_regex2.py,sha256=ws4q-3WehEfIlwxDfEVoFJsjz3gCRc-uiiKPWPcymio,6482
76
+ langroid/agent/tools/formatted_model_regex2.py-e,sha256=ceymTjZAqa-t0oRkuWkYwNZ6b2_2ssP4ChIZgM1AFgI,6703
77
+ langroid/agent/tools/formatted_model_tatsu.py,sha256=xvWiVrRIPdLKbc0jaj8saiBjpBNCDo9ay1adKaZOcZ0,4716
78
+ langroid/agent/tools/formatted_model_tatsu.py-e,sha256=yBPktA5oHqCurnHnanjtYtF4aXQZ0JO1_Y-AhSTXSSE,4646
79
+ langroid/agent/tools/formatted_model_template.py,sha256=139SM0ciPwOjvt9AbFiYl-fhQgSyt3a5xkYOkfy4DSc,6388
80
+ langroid/agent/tools/formatted_model_template.py-e,sha256=yKcP6xXIaAfg3cbnn2Vq4HpmLj1FPTS6jmdHzrzxui8,6311
81
+ langroid/agent/tools/formatted_model_xml.py,sha256=PPmWw_eSGoxOs6Z8MSPa5WuC4WPUVAjnfNRdgNyXHMw,5170
82
+ langroid/agent/tools/formatted_model_xml2.py,sha256=FEz4fL6o3foL-EFpcnxOsas0ZsSTW_TpP21cHRLTwls,5224
83
+ langroid/agent/tools/formatted_model_xml3.py,sha256=AqmC13oZAwrxhlGk_EQvpnl1tyAc3RLGnpYyhnJX8MM,4052
84
+ langroid/agent/tools/formatted_model_xml4.py,sha256=LpWsV-3Dyyfe0tq2c2nxK9g0M4CtBXVIyqq0YNoe70c,3901
85
+ langroid/agent/tools/formatted_model_xml5.py,sha256=HoG1d_1JZq3-PWJeCncyR_Yxn9sPdrR38e5qSzs0mAc,4165
86
+ langroid/agent/tools/formatted_model_xml6.py,sha256=QUVwQXs5K1dLu4aZ3g8uHG02hIRqU1f3byZUc2hObbM,3401
87
+ langroid/agent/tools/formatted_model_xml7.py,sha256=7hdB1seQ5scdTLY9pjR-h7tFJP-ijc-9kAxYqPp_LRk,3553
88
+ langroid/agent/tools/formatted_model_xml8.py,sha256=z3eyNKWK_dvVxDT5o8bEc58hC058QqsxqxarEazhPTA,5259
41
89
  langroid/agent/tools/generator_tool.py,sha256=y0fB0ZObjA0b3L0uSTtrqRCKHDUR95arBftqiUeKD2o,663
90
+ langroid/agent/tools/generic_tool.py,sha256=kSv8i2iHuaRBelnqX3zIuUUTuOSg7TCPYu9labQpKQg,5563
91
+ langroid/agent/tools/generic_tool_tatsu.py,sha256=G1rVpR6Xl3Y0B2R-KAYovsxwIYRj5dyw0J-NTdPuvkI,9315
42
92
  langroid/agent/tools/google_search_tool.py,sha256=y7b-3FtgXf0lfF4AYxrZ3K5pH2dhidvibUOAGBE--WI,1456
93
+ langroid/agent/tools/grammar_based_model.py,sha256=Nj0YtY89ErfEhviOyXmfxKMGBke-wEEaPrpSTGYBN7w,4224
94
+ langroid/agent/tools/grammar_based_model.py-e,sha256=13zU8Id-imokzL93OxkUYQ0BNeCN2ykYCZEgyoC_T7M,4217
95
+ langroid/agent/tools/grammar_based_model_lark.py,sha256=oGRQtkwIrMzYTB9Ac8m1w1p4C30FOejC1Ipey6aDExM,4607
96
+ langroid/agent/tools/grammar_based_model_lark.py-e,sha256=xZrfXJZbMRj2u-um0tAcnuDh-TPPIzoyKKMmOm16hyo,4596
97
+ langroid/agent/tools/grammar_based_model_parse.py,sha256=ZmQ_hqnxxgnxJyz6mkypqVCp-6f40xvQKrHu1g3fUlg,1958
98
+ langroid/agent/tools/grammar_based_model_parse.py-e,sha256=iycM-FqxjkpZhzrlgrL0aDzMVLI9oZ0z6rVZRO6Gvqo,1944
99
+ langroid/agent/tools/grammar_based_model_parsimonious.py,sha256=mSbOKAs9FtCb9hGGSYFPOiEqnfW6J44c-hiG2m5Fbq4,4050
100
+ langroid/agent/tools/grammar_based_model_parsimonious.py-e,sha256=kEvodQI-FjoteXCsR_aUhGuLHcSeqDz7uFtfq4_HZt4,3842
101
+ langroid/agent/tools/grammar_based_model_pyparsing.py,sha256=TZx81K6fwLs7K0tWOoqYbjzZG981cck4W2svB6BDMBA,2709
102
+ langroid/agent/tools/grammar_based_model_pyparsing.py-e,sha256=aiKhr8pTMjpwsEYapag2t5bW6XbgdjfutQ-vZwUPqTw,2708
103
+ langroid/agent/tools/grammar_based_model_regex.py,sha256=r0RYC7y_vnx2KvQEG-tkjBk7YdE_l4w3c8rmZ-30uDo,3882
104
+ langroid/agent/tools/grammar_based_model_regex.py-e,sha256=7_19HiK0lTpUZgGjUW_1t-Ebo_arpoyYA4N0gbgU130,3827
105
+ langroid/agent/tools/grammar_based_model_regex2.py,sha256=c4tP5Xm4gpUolaWmqIWVtZmaVK2yZ4Ne93DdJK6jCBs,3487
106
+ langroid/agent/tools/grammar_based_model_regex2.py-e,sha256=tl3xXIfWXfu5pJV6pCn1NQbvWKIQyxcMglIT8x1zvHA,3444
107
+ langroid/agent/tools/grammar_based_model_tatsu.py,sha256=A-J8flmfvJ5ob-N66ENvzFlCwhv_Ln0sbAiwMpMUbLc,2244
108
+ langroid/agent/tools/grammar_based_model_tatsu.py-e,sha256=Dgu9w1LWstiGWEm-xmwjwuyQsPSwlfZ5Q31dqErfqis,2240
109
+ langroid/agent/tools/lark_earley_example.py,sha256=p5CavHMeiRpMNApzlXv21dM8IkgMj04vpAssibZ809c,3269
110
+ langroid/agent/tools/lark_earley_example.py-e,sha256=cPK0Mkz-Dz38Sqy6Zxw_kwlRoOiDRdzMPd_bgvPyv9Y,3250
111
+ langroid/agent/tools/lark_example.py,sha256=G-DUh8vqWceu_joNoLli_vy373py09vnwPWAfg7oJuY,1669
43
112
  langroid/agent/tools/metaphor_search_tool.py,sha256=qj4gt453cLEX3EGW7nVzVu6X7LCdrwjSlcNY0qJW104,2489
44
113
  langroid/agent/tools/note_tool.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
114
  langroid/agent/tools/orchestration.py,sha256=afIt8Ah0dfrY2TQ7aNrkxUFLV288VTQ0L40Yse_-HeY,10785
115
+ langroid/agent/tools/parse_example.py,sha256=rAi7C37Lb2sAie7lBkBTmhUBUc8jBNzgDwqhrCT--AM,1974
116
+ langroid/agent/tools/parse_example2.py,sha256=zbs8WUP-6CUKL3MCD1FG38BclKWrvCthqiD2Okf5TEU,2166
117
+ langroid/agent/tools/parse_example3.py,sha256=FdBtvpfdIDfxOFnsPRBGTI8eJhM9uVd_NTuNrTD0WSE,1008
118
+ langroid/agent/tools/parse_test.py,sha256=-kkHRrmbzOmHzg8u9AWcmnhoM5qhfDnULgqOLJxRvMw,25509
46
119
  langroid/agent/tools/recipient_tool.py,sha256=0m2kQhYKTeGujAxhSPqH5z6hSAhVB_Dqour6uul2U30,9427
47
120
  langroid/agent/tools/retrieval_tool.py,sha256=2q2pfoYbZNfbWQ0McxrtmfF0ekGglIgRl-6uF26pa-E,871
48
121
  langroid/agent/tools/rewind_tool.py,sha256=XAXL3BpNhCmBGYq_qi_sZfHJuIw7NY2jp4wnojJ7WRs,5606
49
122
  langroid/agent/tools/run_python_code.py,sha256=BvoxYzzHijU-p4703n2iVlt5BCieR1oMSy50w0tQZAg,1787
50
123
  langroid/agent/tools/segment_extract_tool.py,sha256=__srZ_VGYLVOdPrITUM8S0HpmX4q7r5FHWMDdHdEv8w,1440
51
124
  langroid/agent/typed_task.py,sha256=oxja0Z3uLTv0BcR1xIMqDpo85MIGOruz4XsZ4ghjsW4,689
125
+ langroid/agent/xml_tool_message.py,sha256=qPR8JwjBC6n4HDiF9Jdt5rLZu2_tlDMt9-Rzx9OSiik,3670
52
126
  langroid/agent_config.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
127
  langroid/cachedb/__init__.py,sha256=icAT2s7Vhf-ZGUeqpDQGNU6ob6o0aFEyjwcxxUGRFjg,225
54
128
  langroid/cachedb/base.py,sha256=ztVjB1DtN6pLCujCWnR6xruHxwVj3XkYniRTYAKKqk0,1354
@@ -72,7 +146,7 @@ langroid/language_models/azure_openai.py,sha256=G4le3j4YLHV7IwgB2C37hO3MKijZ1Kjy
72
146
  langroid/language_models/base.py,sha256=3DjxxVL7heuTLYRvNMjaIKS-eP8pMDvu8Gbkb6N3B0U,22286
73
147
  langroid/language_models/config.py,sha256=9Q8wk5a7RQr8LGMT_0WkpjY8S4ywK06SalVRjXlfCiI,378
74
148
  langroid/language_models/mock_lm.py,sha256=HuiAvjHiCfffYF5xjFJUq945HVTW0QPbeUUctOnNCzQ,3868
75
- langroid/language_models/openai_gpt.py,sha256=q_M_GD6lEs7oCW0ybBm8jE-AB75tZU9FJhS728juEwQ,64516
149
+ langroid/language_models/openai_gpt.py,sha256=haPcPe3CXAXpdU39rxGThObfv_YV0UivnL2hEdyyaHk,64810
76
150
  langroid/language_models/prompt_formatter/__init__.py,sha256=2-5cdE24XoFDhifOLl8yiscohil1ogbP1ECkYdBlBsk,372
77
151
  langroid/language_models/prompt_formatter/base.py,sha256=eDS1sgRNZVnoajwV_ZIha6cba5Dt8xjgzdRbPITwx3Q,1221
78
152
  langroid/language_models/prompt_formatter/hf_formatter.py,sha256=PVJppmjRvD-2DF-XNC6mE05vTZ9wbu37SmXwZBQhad0,5055
@@ -138,8 +212,8 @@ langroid/vector_store/meilisearch.py,sha256=6frB7GFWeWmeKzRfLZIvzRjllniZ1cYj3Hmh
138
212
  langroid/vector_store/momento.py,sha256=qR-zBF1RKVHQZPZQYW_7g-XpTwr46p8HJuYPCkfJbM4,10534
139
213
  langroid/vector_store/qdrant_cloud.py,sha256=3im4Mip0QXLkR6wiqVsjV1QvhSElfxdFSuDKddBDQ-4,188
140
214
  langroid/vector_store/qdrantdb.py,sha256=v88lqFkepADvlN6lByUj9I4NEKa9X9lWH16uTPPbYrE,17457
141
- pyproject.toml,sha256=CziUU2MWpGqVP_a5LNAgkBacE8VmtsfTPZeoKlR31es,7157
142
- langroid-0.16.5.dist-info/LICENSE,sha256=EgVbvA6VSYgUlvC3RvPKehSg7MFaxWDsFuzLOsPPfJg,1065
143
- langroid-0.16.5.dist-info/METADATA,sha256=D61Of4YYZzlKZfw9qAM_3J8sOKV1dbhTQXz1XAUGvHg,56165
144
- langroid-0.16.5.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
145
- langroid-0.16.5.dist-info/RECORD,,
215
+ pyproject.toml,sha256=Eh6kK4q8_eGjk89AOggYezDjwFsyysGE4jgUw8d-sow,7157
216
+ langroid-0.16.7.dist-info/LICENSE,sha256=EgVbvA6VSYgUlvC3RvPKehSg7MFaxWDsFuzLOsPPfJg,1065
217
+ langroid-0.16.7.dist-info/METADATA,sha256=20DKGcAoboclJSRYVW2M7zYlmJJWdXByOwJVK7jC33c,56165
218
+ langroid-0.16.7.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
219
+ langroid-0.16.7.dist-info/RECORD,,
pyproject.toml CHANGED
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "langroid"
3
- version = "0.16.5"
3
+ version = "0.16.7"
4
4
  description = "Harness LLMs with Multi-Agent Programming"
5
5
  authors = ["Prasad Chalasani <pchalasani@gmail.com>"]
6
6
  readme = "README.md"