langroid 0.52.5__tar.gz → 0.52.6__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 (136) hide show
  1. {langroid-0.52.5 → langroid-0.52.6}/PKG-INFO +1 -1
  2. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/chat_agent.py +8 -1
  3. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/doc_chat_agent.py +8 -2
  4. {langroid-0.52.5 → langroid-0.52.6}/pyproject.toml +1 -1
  5. {langroid-0.52.5 → langroid-0.52.6}/.gitignore +0 -0
  6. {langroid-0.52.5 → langroid-0.52.6}/LICENSE +0 -0
  7. {langroid-0.52.5 → langroid-0.52.6}/README.md +0 -0
  8. {langroid-0.52.5 → langroid-0.52.6}/langroid/__init__.py +0 -0
  9. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/__init__.py +0 -0
  10. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/base.py +0 -0
  11. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/batch.py +0 -0
  12. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/callbacks/__init__.py +0 -0
  13. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/callbacks/chainlit.py +0 -0
  14. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/chat_document.py +0 -0
  15. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/openai_assistant.py +0 -0
  16. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/__init__.py +0 -0
  17. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/arangodb/__init__.py +0 -0
  18. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/arangodb/arangodb_agent.py +0 -0
  19. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/arangodb/system_messages.py +0 -0
  20. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/arangodb/tools.py +0 -0
  21. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/arangodb/utils.py +0 -0
  22. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/doc_chat_task.py +0 -0
  23. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_doc_chat_agent.py +0 -0
  24. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_rag/__init__.py +0 -0
  25. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_rag/critic_agent.py +0 -0
  26. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_rag/lance_rag_task.py +0 -0
  27. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_rag/query_planner_agent.py +0 -0
  28. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/lance_tools.py +0 -0
  29. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/neo4j/__init__.py +0 -0
  30. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/neo4j/csv_kg_chat.py +0 -0
  31. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/neo4j/neo4j_chat_agent.py +0 -0
  32. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/neo4j/system_messages.py +0 -0
  33. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/neo4j/tools.py +0 -0
  34. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/relevance_extractor_agent.py +0 -0
  35. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/retriever_agent.py +0 -0
  36. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/__init__.py +0 -0
  37. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/sql_chat_agent.py +0 -0
  38. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/utils/__init__.py +0 -0
  39. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/utils/description_extractors.py +0 -0
  40. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/utils/populate_metadata.py +0 -0
  41. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/utils/system_message.py +0 -0
  42. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/sql/utils/tools.py +0 -0
  43. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/special/table_chat_agent.py +0 -0
  44. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/task.py +0 -0
  45. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tool_message.py +0 -0
  46. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/__init__.py +0 -0
  47. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/duckduckgo_search_tool.py +0 -0
  48. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/exa_search_tool.py +0 -0
  49. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/file_tools.py +0 -0
  50. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/google_search_tool.py +0 -0
  51. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/metaphor_search_tool.py +0 -0
  52. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/orchestration.py +0 -0
  53. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/recipient_tool.py +0 -0
  54. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/retrieval_tool.py +0 -0
  55. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/rewind_tool.py +0 -0
  56. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/segment_extract_tool.py +0 -0
  57. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/tools/tavily_search_tool.py +0 -0
  58. {langroid-0.52.5 → langroid-0.52.6}/langroid/agent/xml_tool_message.py +0 -0
  59. {langroid-0.52.5 → langroid-0.52.6}/langroid/cachedb/__init__.py +0 -0
  60. {langroid-0.52.5 → langroid-0.52.6}/langroid/cachedb/base.py +0 -0
  61. {langroid-0.52.5 → langroid-0.52.6}/langroid/cachedb/redis_cachedb.py +0 -0
  62. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/__init__.py +0 -0
  63. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/base.py +0 -0
  64. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/models.py +0 -0
  65. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/protoc/__init__.py +0 -0
  66. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/protoc/embeddings.proto +0 -0
  67. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/protoc/embeddings_pb2.py +0 -0
  68. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/protoc/embeddings_pb2.pyi +0 -0
  69. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/protoc/embeddings_pb2_grpc.py +0 -0
  70. {langroid-0.52.5 → langroid-0.52.6}/langroid/embedding_models/remote_embeds.py +0 -0
  71. {langroid-0.52.5 → langroid-0.52.6}/langroid/exceptions.py +0 -0
  72. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/__init__.py +0 -0
  73. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/azure_openai.py +0 -0
  74. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/base.py +0 -0
  75. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/config.py +0 -0
  76. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/mock_lm.py +0 -0
  77. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/model_info.py +0 -0
  78. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/openai_gpt.py +0 -0
  79. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/prompt_formatter/__init__.py +0 -0
  80. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/prompt_formatter/base.py +0 -0
  81. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/prompt_formatter/hf_formatter.py +0 -0
  82. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/prompt_formatter/llama2_formatter.py +0 -0
  83. {langroid-0.52.5 → langroid-0.52.6}/langroid/language_models/utils.py +0 -0
  84. {langroid-0.52.5 → langroid-0.52.6}/langroid/mytypes.py +0 -0
  85. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/__init__.py +0 -0
  86. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/agent_chats.py +0 -0
  87. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/code_parser.py +0 -0
  88. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/document_parser.py +0 -0
  89. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/file_attachment.py +0 -0
  90. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/md_parser.py +0 -0
  91. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/para_sentence_split.py +0 -0
  92. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/parse_json.py +0 -0
  93. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/parser.py +0 -0
  94. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/pdf_utils.py +0 -0
  95. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/repo_loader.py +0 -0
  96. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/routing.py +0 -0
  97. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/search.py +0 -0
  98. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/spider.py +0 -0
  99. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/table_loader.py +0 -0
  100. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/url_loader.py +0 -0
  101. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/urls.py +0 -0
  102. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/utils.py +0 -0
  103. {langroid-0.52.5 → langroid-0.52.6}/langroid/parsing/web_search.py +0 -0
  104. {langroid-0.52.5 → langroid-0.52.6}/langroid/prompts/__init__.py +0 -0
  105. {langroid-0.52.5 → langroid-0.52.6}/langroid/prompts/dialog.py +0 -0
  106. {langroid-0.52.5 → langroid-0.52.6}/langroid/prompts/prompts_config.py +0 -0
  107. {langroid-0.52.5 → langroid-0.52.6}/langroid/prompts/templates.py +0 -0
  108. {langroid-0.52.5 → langroid-0.52.6}/langroid/py.typed +0 -0
  109. {langroid-0.52.5 → langroid-0.52.6}/langroid/pydantic_v1/__init__.py +0 -0
  110. {langroid-0.52.5 → langroid-0.52.6}/langroid/pydantic_v1/main.py +0 -0
  111. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/__init__.py +0 -0
  112. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/algorithms/__init__.py +0 -0
  113. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/algorithms/graph.py +0 -0
  114. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/configuration.py +0 -0
  115. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/constants.py +0 -0
  116. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/git_utils.py +0 -0
  117. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/globals.py +0 -0
  118. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/logging.py +0 -0
  119. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/object_registry.py +0 -0
  120. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/output/__init__.py +0 -0
  121. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/output/citations.py +0 -0
  122. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/output/printing.py +0 -0
  123. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/output/status.py +0 -0
  124. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/pandas_utils.py +0 -0
  125. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/pydantic_utils.py +0 -0
  126. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/system.py +0 -0
  127. {langroid-0.52.5 → langroid-0.52.6}/langroid/utils/types.py +0 -0
  128. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/__init__.py +0 -0
  129. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/base.py +0 -0
  130. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/chromadb.py +0 -0
  131. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/lancedb.py +0 -0
  132. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/meilisearch.py +0 -0
  133. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/pineconedb.py +0 -0
  134. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/postgres.py +0 -0
  135. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/qdrantdb.py +0 -0
  136. {langroid-0.52.5 → langroid-0.52.6}/langroid/vector_store/weaviatedb.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: langroid
3
- Version: 0.52.5
3
+ Version: 0.52.6
4
4
  Summary: Harness LLMs with Multi-Agent Programming
5
5
  Author-email: Prasad Chalasani <pchalasani@gmail.com>
6
6
  License: MIT
@@ -735,7 +735,11 @@ class ChatAgent(Agent):
735
735
  self.llm_tools_usable.discard(t)
736
736
  self.llm_functions_usable.discard(t)
737
737
 
738
- # Set tool instructions and JSON format instructions
738
+ self._update_tool_instructions()
739
+
740
+ def _update_tool_instructions(self) -> None:
741
+ # Set tool instructions and JSON format instructions,
742
+ # in case Tools have been enabled/disabled.
739
743
  if self.config.use_tools:
740
744
  self.system_tool_format_instructions = self.tool_format_rules()
741
745
  self.system_tool_instructions = self.tool_instructions()
@@ -977,6 +981,8 @@ class ChatAgent(Agent):
977
981
  self.llm_tools_usable.discard(t)
978
982
  self.llm_functions_usable.discard(t)
979
983
 
984
+ self._update_tool_instructions()
985
+
980
986
  def disable_message_use_except(self, message_class: Type[ToolMessage]) -> None:
981
987
  """
982
988
  Disable this agent from USING ALL messages EXCEPT a message class (Tool)
@@ -988,6 +994,7 @@ class ChatAgent(Agent):
988
994
  for r in to_remove:
989
995
  self.llm_tools_usable.discard(r)
990
996
  self.llm_functions_usable.discard(r)
997
+ self._update_tool_instructions()
991
998
 
992
999
  def _load_output_format(self, message: ChatDocument) -> None:
993
1000
  """
@@ -123,6 +123,9 @@ class DocChatAgentConfig(ChatAgentConfig):
123
123
  None # filter condition for various lexical/semantic search fns
124
124
  )
125
125
  conversation_mode: bool = True # accumulate message history?
126
+ # retain retrieved context? Setting to True increases token consumption, but
127
+ # helps LLM fix citation errors and improve accuracy of follow-up questions.
128
+ retain_context: bool = False
126
129
  # In assistant mode, DocChatAgent receives questions from another Agent,
127
130
  # and those will already be in stand-alone form, so in this mode
128
131
  # there is no need to convert them to stand-alone form.
@@ -861,8 +864,11 @@ class DocChatAgent(ChatAgent):
861
864
  # one for `final_prompt`, and one for the LLM response
862
865
 
863
866
  if self.config.conversation_mode:
864
- # respond with temporary context
865
- answer_doc = super()._llm_response_temp_context(question, final_prompt)
867
+ if self.config.retain_context:
868
+ answer_doc = super().llm_response(final_prompt)
869
+ else:
870
+ # respond with temporary context
871
+ answer_doc = super()._llm_response_temp_context(question, final_prompt)
866
872
  else:
867
873
  answer_doc = super().llm_response_forget(final_prompt)
868
874
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "langroid"
3
- version = "0.52.5"
3
+ version = "0.52.6"
4
4
  authors = [
5
5
  {name = "Prasad Chalasani", email = "pchalasani@gmail.com"},
6
6
  ]
File without changes
File without changes
File without changes
File without changes
File without changes