langroid 0.9.4__tar.gz → 0.9.5__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 (139) hide show
  1. {langroid-0.9.4 → langroid-0.9.5}/PKG-INFO +1 -1
  2. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/base.py +25 -2
  3. {langroid-0.9.4 → langroid-0.9.5}/pyproject.toml +1 -1
  4. {langroid-0.9.4 → langroid-0.9.5}/LICENSE +0 -0
  5. {langroid-0.9.4 → langroid-0.9.5}/README.md +0 -0
  6. {langroid-0.9.4 → langroid-0.9.5}/langroid/__init__.py +0 -0
  7. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/__init__.py +0 -0
  8. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/batch.py +0 -0
  9. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/callbacks/__init__.py +0 -0
  10. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/callbacks/chainlit.py +0 -0
  11. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/chat_agent.py +0 -0
  12. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/chat_document.py +0 -0
  13. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/helpers.py +0 -0
  14. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/junk +0 -0
  15. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/openai_assistant.py +0 -0
  16. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/__init__.py +0 -0
  17. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/doc_chat_agent.py +0 -0
  18. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_doc_chat_agent.py +0 -0
  19. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_rag/__init__.py +0 -0
  20. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_rag/critic_agent.py +0 -0
  21. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_rag/lance_rag_task.py +0 -0
  22. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_rag/query_planner_agent.py +0 -0
  23. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/lance_tools.py +0 -0
  24. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/neo4j/__init__.py +0 -0
  25. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/neo4j/csv_kg_chat.py +0 -0
  26. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/neo4j/neo4j_chat_agent.py +0 -0
  27. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/neo4j/utils/__init__.py +0 -0
  28. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/neo4j/utils/system_message.py +0 -0
  29. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/relevance_extractor_agent.py +0 -0
  30. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/retriever_agent.py +0 -0
  31. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/__init__.py +0 -0
  32. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/sql_chat_agent.py +0 -0
  33. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/utils/__init__.py +0 -0
  34. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/utils/description_extractors.py +0 -0
  35. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/utils/populate_metadata.py +0 -0
  36. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/utils/system_message.py +0 -0
  37. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/sql/utils/tools.py +0 -0
  38. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/special/table_chat_agent.py +0 -0
  39. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/task.py +0 -0
  40. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tool_message.py +0 -0
  41. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/__init__.py +0 -0
  42. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/duckduckgo_search_tool.py +0 -0
  43. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/extract_tool.py +0 -0
  44. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/generator_tool.py +0 -0
  45. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/google_search_tool.py +0 -0
  46. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/metaphor_search_tool.py +0 -0
  47. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/note_tool.py +0 -0
  48. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/orchestration.py +0 -0
  49. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/recipient_tool.py +0 -0
  50. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/retrieval_tool.py +0 -0
  51. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/rewind_tool.py +0 -0
  52. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/run_python_code.py +0 -0
  53. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/tools/segment_extract_tool.py +0 -0
  54. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent/typed_task.py +0 -0
  55. {langroid-0.9.4 → langroid-0.9.5}/langroid/agent_config.py +0 -0
  56. {langroid-0.9.4 → langroid-0.9.5}/langroid/cachedb/__init__.py +0 -0
  57. {langroid-0.9.4 → langroid-0.9.5}/langroid/cachedb/base.py +0 -0
  58. {langroid-0.9.4 → langroid-0.9.5}/langroid/cachedb/momento_cachedb.py +0 -0
  59. {langroid-0.9.4 → langroid-0.9.5}/langroid/cachedb/redis_cachedb.py +0 -0
  60. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/__init__.py +0 -0
  61. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/base.py +0 -0
  62. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/clustering.py +0 -0
  63. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/models.py +0 -0
  64. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/protoc/__init__.py +0 -0
  65. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/protoc/embeddings.proto +0 -0
  66. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/protoc/embeddings_pb2.py +0 -0
  67. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/protoc/embeddings_pb2.pyi +0 -0
  68. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/protoc/embeddings_pb2_grpc.py +0 -0
  69. {langroid-0.9.4 → langroid-0.9.5}/langroid/embedding_models/remote_embeds.py +0 -0
  70. {langroid-0.9.4 → langroid-0.9.5}/langroid/exceptions.py +0 -0
  71. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/.chainlit/config.toml +0 -0
  72. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/.chainlit/translations/en-US.json +0 -0
  73. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/__init__.py +0 -0
  74. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/azure_openai.py +0 -0
  75. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/base.py +0 -0
  76. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/config.py +0 -0
  77. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/mock_lm.py +0 -0
  78. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/openai_gpt.py +0 -0
  79. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/prompt_formatter/__init__.py +0 -0
  80. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/prompt_formatter/base.py +0 -0
  81. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/prompt_formatter/hf_formatter.py +0 -0
  82. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/prompt_formatter/llama2_formatter.py +0 -0
  83. {langroid-0.9.4 → langroid-0.9.5}/langroid/language_models/utils.py +0 -0
  84. {langroid-0.9.4 → langroid-0.9.5}/langroid/mytypes.py +0 -0
  85. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/__init__.py +0 -0
  86. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/agent_chats.py +0 -0
  87. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/code-parsing.md +0 -0
  88. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/code_parser.py +0 -0
  89. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/config.py +0 -0
  90. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/document_parser.py +0 -0
  91. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/image_text.py +0 -0
  92. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/para_sentence_split.py +0 -0
  93. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/parse_json.py +0 -0
  94. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/parser.py +0 -0
  95. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/repo_loader.py +0 -0
  96. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/routing.py +0 -0
  97. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/search.py +0 -0
  98. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/spider.py +0 -0
  99. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/table_loader.py +0 -0
  100. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/url_loader.py +0 -0
  101. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/url_loader_cookies.py +0 -0
  102. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/urls.py +0 -0
  103. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/utils.py +0 -0
  104. {langroid-0.9.4 → langroid-0.9.5}/langroid/parsing/web_search.py +0 -0
  105. {langroid-0.9.4 → langroid-0.9.5}/langroid/prompts/__init__.py +0 -0
  106. {langroid-0.9.4 → langroid-0.9.5}/langroid/prompts/chat-gpt4-system-prompt.md +0 -0
  107. {langroid-0.9.4 → langroid-0.9.5}/langroid/prompts/dialog.py +0 -0
  108. {langroid-0.9.4 → langroid-0.9.5}/langroid/prompts/prompts_config.py +0 -0
  109. {langroid-0.9.4 → langroid-0.9.5}/langroid/prompts/templates.py +0 -0
  110. {langroid-0.9.4 → langroid-0.9.5}/langroid/pydantic_v1/__init__.py +0 -0
  111. {langroid-0.9.4 → langroid-0.9.5}/langroid/pydantic_v1/main.py +0 -0
  112. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/__init__.py +0 -0
  113. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/algorithms/__init__.py +0 -0
  114. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/algorithms/graph.py +0 -0
  115. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/configuration.py +0 -0
  116. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/constants.py +0 -0
  117. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/docker.py +0 -0
  118. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/globals.py +0 -0
  119. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/llms/__init__.py +0 -0
  120. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/llms/strings.py +0 -0
  121. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/logging.py +0 -0
  122. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/object_registry.py +0 -0
  123. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/output/__init__.py +0 -0
  124. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/output/citations.py +0 -0
  125. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/output/printing.py +0 -0
  126. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/output/status.py +0 -0
  127. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/pandas_utils.py +0 -0
  128. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/pydantic_utils.py +0 -0
  129. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/system.py +0 -0
  130. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/web/__init__.py +0 -0
  131. {langroid-0.9.4 → langroid-0.9.5}/langroid/utils/web/login.py +0 -0
  132. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/__init__.py +0 -0
  133. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/base.py +0 -0
  134. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/chromadb.py +0 -0
  135. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/lancedb.py +0 -0
  136. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/meilisearch.py +0 -0
  137. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/momento.py +0 -0
  138. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/qdrant_cloud.py +0 -0
  139. {langroid-0.9.4 → langroid-0.9.5}/langroid/vector_store/qdrantdb.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: langroid
3
- Version: 0.9.4
3
+ Version: 0.9.5
4
4
  Summary: Harness LLMs with Multi-Agent Programming
5
5
  License: MIT
6
6
  Author: Prasad Chalasani
@@ -45,7 +45,13 @@ from langroid.mytypes import Entity
45
45
  from langroid.parsing.parse_json import extract_top_level_json
46
46
  from langroid.parsing.parser import Parser, ParsingConfig
47
47
  from langroid.prompts.prompts_config import PromptsConfig
48
- from langroid.pydantic_v1 import BaseSettings, Field, ValidationError, validator
48
+ from langroid.pydantic_v1 import (
49
+ BaseModel,
50
+ BaseSettings,
51
+ Field,
52
+ ValidationError,
53
+ validator,
54
+ )
49
55
  from langroid.utils.configuration import settings
50
56
  from langroid.utils.constants import DONE, NO_ANSWER, PASS, PASS_TO, SEND_TO
51
57
  from langroid.utils.object_registry import ObjectRegistry
@@ -1300,8 +1306,25 @@ class Agent(ABC):
1300
1306
  # else wrap it in an agent response and return it so
1301
1307
  # orchestrator can find a respondent
1302
1308
  result = self.create_agent_response(tool_messages=[maybe_result])
1303
- else:
1309
+ elif isinstance(maybe_result, (ChatDocument, str)):
1304
1310
  result = maybe_result
1311
+ elif isinstance(maybe_result, BaseModel):
1312
+ result = maybe_result.json()
1313
+ else:
1314
+ # last resort: use json.dumps() or str() to make it a str
1315
+ try:
1316
+ result = json.dumps(maybe_result)
1317
+ except Exception:
1318
+ try:
1319
+ result = str(maybe_result)
1320
+ except Exception as e:
1321
+ logger.error(
1322
+ f"""
1323
+ Error converting result of {tool_name} to str: {e}",
1324
+ """,
1325
+ exc_info=True,
1326
+ )
1327
+ result = None
1305
1328
  except Exception as e:
1306
1329
  # raise the error here since we are sure it's
1307
1330
  # not a pydantic validation error,
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "langroid"
3
- version = "0.9.4"
3
+ version = "0.9.5"
4
4
  description = "Harness LLMs with Multi-Agent Programming"
5
5
  authors = ["Prasad Chalasani <pchalasani@gmail.com>"]
6
6
  readme = "README.md"
File without changes
File without changes
File without changes
File without changes
File without changes