flo-ai 0.0.5.dev5__tar.gz → 0.0.5.dev7__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 (58) hide show
  1. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/PKG-INFO +3 -3
  2. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/factory/agent_factory.py +10 -9
  3. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_executable.py +1 -8
  4. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/flo_router.py +2 -2
  5. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/yaml/config.py +1 -1
  6. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/pyproject.toml +3 -4
  7. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/LICENSE +0 -0
  8. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/README.md +0 -0
  9. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/__init__.py +0 -0
  10. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/builders/__init__.py +0 -0
  11. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/builders/yaml_builder.py +0 -0
  12. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/callbacks/__init__.py +0 -0
  13. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/callbacks/flo_callbacks.py +0 -0
  14. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/callbacks/flo_execution_logger.py +0 -0
  15. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/common/README.md +0 -0
  16. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/common/__init__.py +0 -0
  17. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/common/flo_langchain_logger.py +0 -0
  18. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/common/flo_logger.py +0 -0
  19. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/constants/__init__.py +0 -0
  20. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/constants/common_constants.py +0 -0
  21. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/constants/flo_node_contants.py +0 -0
  22. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/constants/prompt_constants.py +0 -0
  23. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/core.py +0 -0
  24. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/error/flo_exception.py +0 -0
  25. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/helpers/utils.py +0 -0
  26. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/__init__.py +0 -0
  27. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/delegate.py +0 -0
  28. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/exception.py +0 -0
  29. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_agent.py +0 -0
  30. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_delegation_agent.py +0 -0
  31. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_llm_agent.py +0 -0
  32. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_member.py +0 -0
  33. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_node.py +0 -0
  34. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_reflection_agent.py +0 -0
  35. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_routed_team.py +0 -0
  36. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_team.py +0 -0
  37. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/models/flo_tool_agent.py +0 -0
  38. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/parsers/flo_json_parser.py +0 -0
  39. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/parsers/flo_parser.py +0 -0
  40. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/parsers/flo_pydantic_parser.py +0 -0
  41. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/retrievers/__init__.py +0 -0
  42. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/retrievers/flo_compression_pipeline.py +0 -0
  43. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/retrievers/flo_multi_query.py +0 -0
  44. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/retrievers/flo_retriever.py +0 -0
  45. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/__init__.py +0 -0
  46. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/flo_linear.py +0 -0
  47. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/flo_llm_router.py +0 -0
  48. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/flo_router_factory.py +0 -0
  49. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/router/flo_supervisor.py +0 -0
  50. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/state/__init__.py +0 -0
  51. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/state/flo_data_collector.py +0 -0
  52. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/state/flo_kv_collector.py +0 -0
  53. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/state/flo_session.py +0 -0
  54. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/state/flo_state.py +0 -0
  55. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/storage/data_collector.py +0 -0
  56. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/tools/__init__.py +0 -0
  57. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/tools/flo_tool.py +0 -0
  58. {flo_ai-0.0.5.dev5 → flo_ai-0.0.5.dev7}/flo_ai/yaml/validators.py +0 -0
@@ -1,18 +1,18 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: flo-ai
3
- Version: 0.0.5.dev5
3
+ Version: 0.0.5.dev7
4
4
  Summary: A easy way to create structured AI agents
5
5
  License: MIT
6
6
  Author: vizsatiz
7
7
  Author-email: vishnu@rootfor.xyz
8
- Requires-Python: >=3.10,<4.0
8
+ Requires-Python: >=3.9,<4.0
9
9
  Classifier: License :: OSI Approved :: MIT License
10
10
  Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.9
11
12
  Classifier: Programming Language :: Python :: 3.10
12
13
  Classifier: Programming Language :: Python :: 3.11
13
14
  Classifier: Programming Language :: Python :: 3.12
14
15
  Requires-Dist: httpx (==0.27.0)
15
- Requires-Dist: ipython (==8.24.0)
16
16
  Requires-Dist: langchain (==0.3.3)
17
17
  Requires-Dist: langchain-community (==0.3.2)
18
18
  Requires-Dist: langgraph (==0.2.38)
@@ -33,15 +33,16 @@ class AgentFactory:
33
33
  if agent_kind is None:
34
34
  raise FloException(f"""Unknown agent kind: `{kind}`. The supported types are llm, tool, reflection, delegator or agentic.
35
35
  Check the documentation @ {DOCUMENTATION_AGENT_ANCHOR}""")
36
- match agent_kind:
37
- case AgentKinds.llm:
38
- return AgentFactory.__create_llm_agent(session, agent)
39
- case AgentKinds.tool:
40
- return AgentFactory.__create_runnable_agent(session, agent)
41
- case AgentKinds.reflection:
42
- return AgentFactory.__create_reflection_agent(session, agent)
43
- case AgentKinds.delegator:
44
- return AgentFactory.__create_delegator_agent(session, agent)
36
+ if agent_kind == AgentKinds.llm:
37
+ return AgentFactory.__create_llm_agent(session, agent)
38
+ elif agent_kind == AgentKinds.tool:
39
+ return AgentFactory.__create_runnable_agent(session, agent)
40
+ elif agent_kind == AgentKinds.reflection:
41
+ return AgentFactory.__create_reflection_agent(session, agent)
42
+ elif agent_kind == AgentKinds.delegator:
43
+ return AgentFactory.__create_delegator_agent(session, agent)
44
+ else:
45
+ raise ValueError(f'Unsupported agent kind: {agent_kind}')
45
46
  return AgentFactory.__create_agentic_agent(session, agent, tool_map)
46
47
 
47
48
  @staticmethod
@@ -16,14 +16,7 @@ class ExecutableType(Enum):
16
16
 
17
17
  @staticmethod
18
18
  def isAgent(type: 'ExecutableType'):
19
- match type:
20
- case ExecutableType.agentic:
21
- return True
22
- case ExecutableType.llm:
23
- return True
24
- case ExecutableType.tool:
25
- return True
26
- return False
19
+ return type in [ExecutableType.agentic, ExecutableType.llm, ExecutableType.tool]
27
20
 
28
21
 
29
22
  class ExecutableFlo(FloMember):
@@ -78,7 +78,7 @@ class FloRouter(ABC):
78
78
  workflow: StateGraph,
79
79
  parent: FloNode,
80
80
  delegation_node: FloNode,
81
- nextNode: Union[FloNode | str],
81
+ nextNode: Union[FloNode, str],
82
82
  ):
83
83
  to_agent_names = delegation_node.delegate.to
84
84
  delegation_node_name = delegation_node.name
@@ -129,7 +129,7 @@ class FloRouter(ABC):
129
129
  self,
130
130
  workflow: StateGraph,
131
131
  reflection_node: FloNode,
132
- nextNode: Union[FloNode | str],
132
+ nextNode: Union[FloNode, str],
133
133
  ):
134
134
  to_agent_name = reflection_node.delegate.to[0]
135
135
  retry = reflection_node.delegate.retry or 1
@@ -34,7 +34,7 @@ class PromptStrategy(BaseModel):
34
34
  kind: str
35
35
  agent_name: str
36
36
  retries: int
37
- next: str | None = None
37
+ next: Union[str, None] = None
38
38
 
39
39
 
40
40
  class MemberKey(BaseModel):
@@ -1,16 +1,15 @@
1
1
  [tool.poetry]
2
2
  name = "flo-ai"
3
- version = "0.0.5-dev5"
3
+ version = "0.0.5-dev7"
4
4
  description = "A easy way to create structured AI agents"
5
5
  authors = ["vizsatiz <vishnu@rootfor.xyz>"]
6
6
  license = "MIT"
7
7
  readme = "README.md"
8
8
 
9
9
  [tool.poetry.dependencies]
10
- python = ">=3.10,<4.0"
10
+ python = ">=3.9,<4.0"
11
11
  langchain = "0.3.3"
12
12
  langgraph = "0.2.38"
13
- ipython = "8.24.0"
14
13
  httpx = "0.27.0"
15
14
  pillow = "^10.3.0"
16
15
  pydantic = "^2.9.2"
@@ -19,7 +18,7 @@ langchain-community = "0.3.2"
19
18
 
20
19
  [tool.poetry.group.dev.dependencies]
21
20
  langchain-mongodb = "^0.2.0"
22
- langchain-chroma = "^0.1.4"
21
+ # langchain-chroma = "^0.1.4"
23
22
  langchainhub = "^0.1.17"
24
23
  pypdf = "^4.2.0"
25
24
  ipykernel = "^6.29.5"
File without changes
File without changes
File without changes