[BUGFIX][Conversation] [swarm.tools]

pull/339/head
Kye 1 year ago committed by evelynmitchell
parent d67b39f48d
commit 9622fd5d82

@ -25,6 +25,39 @@ from swarms.structs.schemas import (
)
####################
from swarms.structs.agent import Agent
from swarms.structs.autoscaler import AutoScaler
from swarms.structs.base import BaseStructure
from swarms.structs.base_swarm import AbstractSwarm
from swarms.structs.base_workflow import BaseWorkflow
from swarms.structs.concurrent_workflow import ConcurrentWorkflow
from swarms.structs.conversation import Conversation
from swarms.structs.groupchat import GroupChat, GroupChatManager
from swarms.structs.model_parallizer import ModelParallelizer
from swarms.structs.multi_agent_collab import MultiAgentCollaboration
from swarms.structs.nonlinear_workflow import NonlinearWorkflow
from swarms.structs.recursive_workflow import RecursiveWorkflow
from swarms.structs.schemas import (
Artifact,
ArtifactUpload,
StepInput,
TaskInput,
)
from swarms.structs.sequential_workflow import SequentialWorkflow
from swarms.structs.swarm_net import SwarmNetwork
from swarms.structs.utils import (
distribute_tasks,
extract_key_from_json,
extract_tokens_from_text,
find_agent_by_id,
find_token_in_text,
parse_tasks,
)
from dotenv import load_dotenv
load_dotenv()
api_key = os.getenv("OPENAI_API_KEY")
@ -35,19 +68,25 @@ model = OpenAIChat(
)
def process_documentation(cls):
def process_documentation(
item,
module: str = "swarms.structs",
docs_folder_path: str = "docs/swarms/structs",
):
"""
Process the documentation for a given class using OpenAI model and save it in a Markdown file.
Process the documentation for a given class or function using OpenAI model and save it in a Python file.
"""
doc = inspect.getdoc(cls)
source = inspect.getsource(cls)
doc = inspect.getdoc(item)
source = inspect.getsource(item)
is_class = inspect.isclass(item)
item_type = "Class Name" if is_class else "Name"
input_content = (
"Class Name:"
f" {cls.__name__}\n\nDocumentation:\n{doc}\n\nSource"
f"{item_type}:"
f" {item.__name__}\n\nDocumentation:\n{doc}\n\nSource"
f" Code:\n{source}"
)
# Process with OpenAI model (assuming the model's __call__ method takes this input and returns processed content)
# Process with OpenAI model
processed_content = model(
DOCUMENTATION_WRITER_SOP(input_content, "swarms.structs")
)
@ -59,8 +98,8 @@ def process_documentation(cls):
dir_path = "docs/swarms/structs"
os.makedirs(dir_path, exist_ok=True)
# Write the processed documentation to a Markdown file
file_path = os.path.join(dir_path, f"{cls.__name__.lower()}.md")
# Write the processed documentation to a Python file
file_path = os.path.join(dir_path, f"{item.__name__.lower()}.md")
with open(file_path, "w") as file:
file.write(doc_content)
@ -82,9 +121,35 @@ def main():
ArtifactUpload,
StepInput,
TaskInput,
items = [
Agent,
SequentialWorkflow,
AutoScaler,
Conversation,
TaskInput,
Artifact,
ArtifactUpload,
StepInput,
SwarmNetwork,
ModelParallelizer,
MultiAgentCollaboration,
AbstractSwarm,
GroupChat,
GroupChatManager,
parse_tasks,
find_agent_by_id,
distribute_tasks,
find_token_in_text,
extract_key_from_json,
extract_tokens_from_text,
ConcurrentWorkflow,
RecursiveWorkflow,
NonlinearWorkflow,
BaseWorkflow,
BaseStructure,
]
threads = []
for cls in classes:
for cls in items:
thread = threading.Thread(
target=process_documentation, args=(cls,)
)

@ -26,6 +26,7 @@ from swarms.structs.utils import (
find_agent_by_id,
find_token_in_text,
parse_tasks,
detect_markdown,
)
__all__ = [
@ -57,8 +58,13 @@ __all__ = [
=======
"BaseWorkflow",
<<<<<<< HEAD
<<<<<<< HEAD
>>>>>>> db2dbf3 ([CODE QUALITY])
=======
"BaseStructure"
>>>>>>> a9b3d7d ([CLEANUP][__init__])
=======
"BaseStructure",
"detect_markdown",
>>>>>>> 1df42a3 ([BUGFIX][Conversation] [swarm.tools])
]

@ -11,7 +11,19 @@ from swarms.telemetry.sys_info import (
interpreter_info,
system_info,
)
from swarms.telemetry.sys_info import (
get_cpu_info,
get_oi_version,
get_os_version,
get_package_mismatches,
get_pip_version,
get_python_version,
get_ram_info,
interpreter_info,
system_info,
)
from swarms.telemetry.user_utils import (
generate_unique_identifier,
generate_unique_identifier,
generate_user_id,
get_machine_id,
@ -25,7 +37,11 @@ __all__ = [
"get_machine_id",
"get_system_info",
"generate_unique_identifier",
<<<<<<< HEAD
"get_python_version", # from swarms/telemetry/sys_info.py
=======
"get_python_version",
>>>>>>> 1df42a3 ([BUGFIX][Conversation] [swarm.tools])
"get_pip_version",
"get_oi_version",
"get_os_version",

Loading…
Cancel
Save