flo_ai 0.0.6.dev1__tar.gz → 0.0.6.dev3__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 (57) hide show
  1. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/PKG-INFO +1 -1
  2. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_node.py +1 -1
  3. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/parsers/flo_json_parser.py +3 -0
  4. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/parsers/flo_parser.py +5 -0
  5. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/parsers/flo_pydantic_parser.py +3 -0
  6. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/yaml/config.py +0 -7
  7. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/pyproject.toml +1 -1
  8. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/README.md +0 -0
  9. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/__init__.py +0 -0
  10. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/builders/__init__.py +0 -0
  11. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/builders/yaml_builder.py +0 -0
  12. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/callbacks/__init__.py +0 -0
  13. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/callbacks/flo_callbacks.py +0 -0
  14. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/callbacks/flo_execution_logger.py +0 -0
  15. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/common/__init__.py +0 -0
  16. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/common/flo_langchain_logger.py +0 -0
  17. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/common/flo_logger.py +0 -0
  18. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/constants/__init__.py +0 -0
  19. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/constants/common_constants.py +0 -0
  20. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/constants/flo_node_contants.py +0 -0
  21. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/constants/prompt_constants.py +0 -0
  22. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/core.py +0 -0
  23. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/error/flo_exception.py +0 -0
  24. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/factory/agent_factory.py +0 -0
  25. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/helpers/utils.py +0 -0
  26. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/__init__.py +0 -0
  27. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/delegate.py +0 -0
  28. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/exception.py +0 -0
  29. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_agent.py +0 -0
  30. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_delegation_agent.py +0 -0
  31. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_executable.py +0 -0
  32. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_llm_agent.py +0 -0
  33. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_member.py +0 -0
  34. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_reflection_agent.py +0 -0
  35. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_routed_team.py +0 -0
  36. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_team.py +0 -0
  37. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/models/flo_tool_agent.py +0 -0
  38. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/parsers/__init__.py +0 -0
  39. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/retrievers/__init__.py +0 -0
  40. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/retrievers/flo_compression_pipeline.py +0 -0
  41. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/retrievers/flo_multi_query.py +0 -0
  42. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/retrievers/flo_retriever.py +0 -0
  43. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/__init__.py +0 -0
  44. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/flo_linear.py +0 -0
  45. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/flo_llm_router.py +0 -0
  46. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/flo_router.py +0 -0
  47. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/flo_router_factory.py +0 -0
  48. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/router/flo_supervisor.py +0 -0
  49. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/state/__init__.py +0 -0
  50. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/state/flo_json_output_collector.py +0 -0
  51. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/state/flo_output_collector.py +0 -0
  52. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/state/flo_session.py +0 -0
  53. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/state/flo_state.py +0 -0
  54. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/storage/data_collector.py +0 -0
  55. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/tools/__init__.py +0 -0
  56. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/tools/flo_tool.py +0 -0
  57. {flo_ai-0.0.6.dev1 → flo_ai-0.0.6.dev3}/flo_ai/yaml/validators.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: flo_ai
3
- Version: 0.0.6.dev1
3
+ Version: 0.0.6.dev3
4
4
  Summary: A easy way to create structured AI agents
5
5
  License: MIT
6
6
  Author: rootflo
@@ -36,7 +36,7 @@ class FloNode:
36
36
  self.async_func = async_func
37
37
  self.agent_executable = agent_executable
38
38
 
39
- def invoke(self, query, config):
39
+ def invoke(self, query, config, chat_history = []):
40
40
  return self.func(
41
41
  {STATE_NAME_MESSAGES: [HumanMessage(content=query)]}, config=config
42
42
  )
@@ -96,6 +96,9 @@ class FloJsonParser(FloParser):
96
96
  literals = [literal_value['value'] for literal_value in literal_values]
97
97
  return Literal[tuple(literals)]
98
98
 
99
+ def get_format(self) -> BaseModel:
100
+ return self.__create_contract_from_json()
101
+
99
102
  def __create_contract_from_json(self) -> BaseModel:
100
103
  pydantic_fields = {}
101
104
  for field in self.contract.fields:
@@ -1,7 +1,12 @@
1
1
  from abc import ABC, abstractmethod
2
+ from pydantic import BaseModel
2
3
 
3
4
 
4
5
  class FloParser(ABC):
5
6
  @abstractmethod
6
7
  def get_format_instructions(self):
7
8
  pass
9
+
10
+ @abstractmethod
11
+ def get_format(self) -> BaseModel:
12
+ pass
@@ -13,6 +13,9 @@ class FloPydanticParser(FloParser):
13
13
  pydantic_object=self.model
14
14
  ).get_format_instructions()
15
15
 
16
+ def get_format(self):
17
+ return self.model
18
+
16
19
  def create(output_model: BaseModel):
17
20
  return FloPydanticParser.Builder(output_model).build()
18
21
 
@@ -30,13 +30,6 @@ class ToolConfig(BaseModel):
30
30
  filters: Optional[List[FilterArgs]] = None
31
31
 
32
32
 
33
- class PromptStrategy(BaseModel):
34
- kind: str
35
- agent_name: str
36
- retries: int
37
- next: Union[str, None] = None
38
-
39
-
40
33
  class MemberKey(BaseModel):
41
34
  name: str
42
35
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "flo_ai"
3
- version = "0.0.6-dev1"
3
+ version = "0.0.6-dev3"
4
4
  description = "A easy way to create structured AI agents"
5
5
  authors = ["rootflo <*@rootflo.ai>"]
6
6
  license = "MIT"
File without changes
File without changes