langroid 0.31.0__tar.gz → 0.31.1__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.
Files changed (161) hide show
  1. {langroid-0.31.0 → langroid-0.31.1}/PKG-INFO +1 -1
  2. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/chat_agent.py +12 -6
  3. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tool_message.py +12 -0
  4. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/models.py +1 -1
  5. {langroid-0.31.0 → langroid-0.31.1}/pyproject.toml +2 -2
  6. {langroid-0.31.0 → langroid-0.31.1}/LICENSE +0 -0
  7. {langroid-0.31.0 → langroid-0.31.1}/README.md +0 -0
  8. {langroid-0.31.0 → langroid-0.31.1}/langroid/__init__.py +0 -0
  9. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/config.toml +0 -0
  10. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/bn.json +0 -0
  11. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/en-US.json +0 -0
  12. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/gu.json +0 -0
  13. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/he-IL.json +0 -0
  14. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/hi.json +0 -0
  15. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/kn.json +0 -0
  16. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/ml.json +0 -0
  17. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/mr.json +0 -0
  18. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/ta.json +0 -0
  19. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/te.json +0 -0
  20. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/.chainlit/translations/zh-CN.json +0 -0
  21. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/__init__.py +0 -0
  22. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/base.py +0 -0
  23. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/batch.py +0 -0
  24. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/callbacks/__init__.py +0 -0
  25. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/callbacks/chainlit.py +0 -0
  26. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/chat_document.py +0 -0
  27. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/helpers.py +0 -0
  28. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/junk +0 -0
  29. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/openai_assistant.py +0 -0
  30. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/__init__.py +0 -0
  31. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/arangodb/__init__.py +0 -0
  32. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/arangodb/arangodb_agent.py +0 -0
  33. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/arangodb/system_messages.py +0 -0
  34. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/arangodb/tools.py +0 -0
  35. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/arangodb/utils.py +0 -0
  36. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/doc_chat_agent.py +0 -0
  37. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_doc_chat_agent.py +0 -0
  38. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_rag/__init__.py +0 -0
  39. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_rag/critic_agent.py +0 -0
  40. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_rag/lance_rag_task.py +0 -0
  41. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_rag/query_planner_agent.py +0 -0
  42. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/lance_tools.py +0 -0
  43. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/neo4j/__init__.py +0 -0
  44. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/neo4j/csv_kg_chat.py +0 -0
  45. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/neo4j/neo4j_chat_agent.py +0 -0
  46. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/neo4j/system_messages.py +0 -0
  47. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/neo4j/tools.py +0 -0
  48. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/relevance_extractor_agent.py +0 -0
  49. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/retriever_agent.py +0 -0
  50. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/__init__.py +0 -0
  51. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/sql_chat_agent.py +0 -0
  52. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/utils/__init__.py +0 -0
  53. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/utils/description_extractors.py +0 -0
  54. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/utils/populate_metadata.py +0 -0
  55. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/utils/system_message.py +0 -0
  56. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/sql/utils/tools.py +0 -0
  57. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/special/table_chat_agent.py +0 -0
  58. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/structured_message.py +0 -0
  59. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/task.py +0 -0
  60. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/__init__.py +0 -0
  61. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/duckduckgo_search_tool.py +0 -0
  62. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/file_tools.py +0 -0
  63. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/google_search_tool.py +0 -0
  64. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/metaphor_search_tool.py +0 -0
  65. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/orchestration.py +0 -0
  66. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/recipient_tool.py +0 -0
  67. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/retrieval_tool.py +0 -0
  68. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/rewind_tool.py +0 -0
  69. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/tools/segment_extract_tool.py +0 -0
  70. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/typed_task.py +0 -0
  71. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent/xml_tool_message.py +0 -0
  72. {langroid-0.31.0 → langroid-0.31.1}/langroid/agent_config.py +0 -0
  73. {langroid-0.31.0 → langroid-0.31.1}/langroid/cachedb/__init__.py +0 -0
  74. {langroid-0.31.0 → langroid-0.31.1}/langroid/cachedb/base.py +0 -0
  75. {langroid-0.31.0 → langroid-0.31.1}/langroid/cachedb/momento_cachedb.py +0 -0
  76. {langroid-0.31.0 → langroid-0.31.1}/langroid/cachedb/redis_cachedb.py +0 -0
  77. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/__init__.py +0 -0
  78. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/base.py +0 -0
  79. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/clustering.py +0 -0
  80. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/protoc/__init__.py +0 -0
  81. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/protoc/embeddings.proto +0 -0
  82. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/protoc/embeddings_pb2.py +0 -0
  83. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/protoc/embeddings_pb2.pyi +0 -0
  84. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/protoc/embeddings_pb2_grpc.py +0 -0
  85. {langroid-0.31.0 → langroid-0.31.1}/langroid/embedding_models/remote_embeds.py +0 -0
  86. {langroid-0.31.0 → langroid-0.31.1}/langroid/exceptions.py +0 -0
  87. {langroid-0.31.0 → langroid-0.31.1}/langroid/experimental/team-save.py +0 -0
  88. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/.chainlit/config.toml +0 -0
  89. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/.chainlit/translations/en-US.json +0 -0
  90. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/__init__.py +0 -0
  91. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/azure_openai.py +0 -0
  92. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/base.py +0 -0
  93. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/config.py +0 -0
  94. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/mock_lm.py +0 -0
  95. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/openai_gpt.py +0 -0
  96. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/prompt_formatter/__init__.py +0 -0
  97. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/prompt_formatter/base.py +0 -0
  98. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/prompt_formatter/hf_formatter.py +0 -0
  99. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/prompt_formatter/llama2_formatter.py +0 -0
  100. {langroid-0.31.0 → langroid-0.31.1}/langroid/language_models/utils.py +0 -0
  101. {langroid-0.31.0 → langroid-0.31.1}/langroid/mytypes.py +0 -0
  102. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/__init__.py +0 -0
  103. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/agent_chats.py +0 -0
  104. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/code-parsing.md +0 -0
  105. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/code_parser.py +0 -0
  106. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/config.py +0 -0
  107. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/document_parser.py +0 -0
  108. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/image_text.py +0 -0
  109. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/para_sentence_split.py +0 -0
  110. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/parse_json.py +0 -0
  111. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/parser.py +0 -0
  112. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/repo_loader.py +0 -0
  113. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/routing.py +0 -0
  114. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/search.py +0 -0
  115. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/spider.py +0 -0
  116. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/table_loader.py +0 -0
  117. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/url_loader.py +0 -0
  118. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/url_loader_cookies.py +0 -0
  119. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/urls.py +0 -0
  120. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/utils.py +0 -0
  121. {langroid-0.31.0 → langroid-0.31.1}/langroid/parsing/web_search.py +0 -0
  122. {langroid-0.31.0 → langroid-0.31.1}/langroid/prompts/__init__.py +0 -0
  123. {langroid-0.31.0 → langroid-0.31.1}/langroid/prompts/chat-gpt4-system-prompt.md +0 -0
  124. {langroid-0.31.0 → langroid-0.31.1}/langroid/prompts/dialog.py +0 -0
  125. {langroid-0.31.0 → langroid-0.31.1}/langroid/prompts/prompts_config.py +0 -0
  126. {langroid-0.31.0 → langroid-0.31.1}/langroid/prompts/templates.py +0 -0
  127. {langroid-0.31.0 → langroid-0.31.1}/langroid/py.typed +0 -0
  128. {langroid-0.31.0 → langroid-0.31.1}/langroid/pydantic_v1/__init__.py +0 -0
  129. {langroid-0.31.0 → langroid-0.31.1}/langroid/pydantic_v1/main.py +0 -0
  130. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/.chainlit/config.toml +0 -0
  131. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/.chainlit/translations/en-US.json +0 -0
  132. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/__init__.py +0 -0
  133. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/algorithms/__init__.py +0 -0
  134. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/algorithms/graph.py +0 -0
  135. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/configuration.py +0 -0
  136. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/constants.py +0 -0
  137. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/docker.py +0 -0
  138. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/git_utils.py +0 -0
  139. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/globals.py +0 -0
  140. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/llms/__init__.py +0 -0
  141. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/llms/strings.py +0 -0
  142. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/logging.py +0 -0
  143. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/object_registry.py +0 -0
  144. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/output/__init__.py +0 -0
  145. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/output/citations.py +0 -0
  146. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/output/printing.py +0 -0
  147. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/output/status.py +0 -0
  148. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/pandas_utils.py +0 -0
  149. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/pydantic_utils.py +0 -0
  150. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/system.py +0 -0
  151. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/types.py +0 -0
  152. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/web/__init__.py +0 -0
  153. {langroid-0.31.0 → langroid-0.31.1}/langroid/utils/web/login.py +0 -0
  154. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/__init__.py +0 -0
  155. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/base.py +0 -0
  156. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/chromadb.py +0 -0
  157. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/lancedb.py +0 -0
  158. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/meilisearch.py +0 -0
  159. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/momento.py +0 -0
  160. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/qdrant_cloud.py +0 -0
  161. {langroid-0.31.0 → langroid-0.31.1}/langroid/vector_store/qdrantdb.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: langroid
3
- Version: 0.31.0
3
+ Version: 0.31.1
4
4
  Summary: Harness LLMs with Multi-Agent Programming
5
5
  License: MIT
6
6
  Author: Prasad Chalasani
@@ -450,17 +450,23 @@ class ChatAgent(Agent):
450
450
  return ""
451
451
  instructions = []
452
452
  for msg_cls in enabled_classes:
453
- if (
454
- hasattr(msg_cls, "instructions")
455
- and inspect.ismethod(msg_cls.instructions)
456
- and msg_cls.default_value("request") in self.llm_tools_usable
457
- ):
453
+ if msg_cls.default_value("request") in self.llm_tools_usable:
454
+ class_instructions = ""
455
+ if hasattr(msg_cls, "instructions") and inspect.ismethod(
456
+ msg_cls.instructions
457
+ ):
458
+ class_instructions = msg_cls.instructions()
459
+ if (
460
+ self.config.use_tools
461
+ and hasattr(msg_cls, "langroid_tools_instructions")
462
+ and inspect.ismethod(msg_cls.langroid_tools_instructions)
463
+ ):
464
+ class_instructions += msg_cls.langroid_tools_instructions()
458
465
  # example will be shown in tool_format_rules() when using TOOLs,
459
466
  # so we don't need to show it here.
460
467
  example = "" if self.config.use_tools else (msg_cls.usage_examples())
461
468
  if example != "":
462
469
  example = "EXAMPLES:\n" + example
463
- class_instructions = msg_cls.instructions()
464
470
  guidance = (
465
471
  ""
466
472
  if class_instructions == ""
@@ -126,6 +126,18 @@ class ToolMessage(ABC, BaseModel):
126
126
 
127
127
  @classmethod
128
128
  def instructions(cls) -> str:
129
+ """
130
+ Instructions on tool usage.
131
+ """
132
+ return ""
133
+
134
+ @classmethod
135
+ def langroid_tools_instructions(cls) -> str:
136
+ """
137
+ Instructions on tool usage when `use_tools == True`, i.e.
138
+ when using langroid built-in tools
139
+ (as opposed to OpenAI-like function calls/tools).
140
+ """
129
141
  return """
130
142
  IMPORTANT: When using this or any other tool/function, you MUST include a
131
143
  `request` field and set it equal to the FUNCTION/TOOL NAME you intend to use.
@@ -1,7 +1,7 @@
1
1
  import atexit
2
2
  import os
3
3
  from functools import cached_property
4
- from typing import Any, Callable, Dict, List, Optional, Union
4
+ from typing import Any, Callable, Dict, List, Optional
5
5
 
6
6
  import requests
7
7
  import tiktoken
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "langroid"
3
- version = "0.31.0"
3
+ version = "0.31.1"
4
4
  description = "Harness LLMs with Multi-Agent Programming"
5
5
  authors = ["Prasad Chalasani <pchalasani@gmail.com>"]
6
6
  readme = "README.md"
@@ -155,7 +155,7 @@ fastembed = ["fastembed"]
155
155
  black = {extras = ["jupyter"], version = "^24.3.0"}
156
156
  flake8 = "^6.0.0"
157
157
  mypy = "^1.11.2"
158
- ruff = "^0.7.2"
158
+ ruff = "^0.8.4"
159
159
  pre-commit = "^3.3.2"
160
160
  autopep8 = "^2.0.2"
161
161
 
File without changes
File without changes
File without changes
File without changes
File without changes