|
| 1 | +{ |
| 2 | + "description": "The `pipelex` project leverages a modular architecture for integrating and managing diverse AI models and cognitive tools. The core of this integration is the AI Model Integration Subsystem, which provides a unified abstraction layer for interacting with various external Large Language Models (LLMs) and AI services. This subsystem orchestrates API calls, handles authentication, and parses responses, ensuring a standardized approach to AI model interactions.", |
| 3 | + "components": [ |
| 4 | + { |
| 5 | + "name": "AI Model Integration Subsystem", |
| 6 | + "description": "Provides a unified and standardized abstraction layer for interacting with diverse external Large Language Models (LLMs) and AI services, managing API calls, authentication, and response parsing. It acts as the central orchestrator for all AI model interactions within `pipelex`.", |
| 7 | + "referenced_source_code": [ |
| 8 | + { |
| 9 | + "qualified_name": "pipelex.plugins.plugin_manager.PluginManager", |
| 10 | + "reference_file": "pipelex/plugins/plugin_manager.py", |
| 11 | + "reference_start_line": 4, |
| 12 | + "reference_end_line": 12 |
| 13 | + }, |
| 14 | + { |
| 15 | + "qualified_name": "pipelex.plugins.plugin_sdk_registry.PluginSdkRegistry", |
| 16 | + "reference_file": "pipelex/plugins/plugin_sdk_registry.py", |
| 17 | + "reference_start_line": 27, |
| 18 | + "reference_end_line": 41 |
| 19 | + } |
| 20 | + ], |
| 21 | + "assigned_files": [ |
| 22 | + "pipelex/plugins/__init__.py", |
| 23 | + "pipelex/plugins/plugin_sdk_registry.py", |
| 24 | + "pipelex/plugins/plugin_manager.py" |
| 25 | + ], |
| 26 | + "can_expand": true |
| 27 | + }, |
| 28 | + { |
| 29 | + "name": "OpenAI Adapter", |
| 30 | + "description": "Implements the specific logic to connect to, authenticate with, and interact with the OpenAI API, formatting requests and parsing responses according to OpenAI's specifications.", |
| 31 | + "referenced_source_code": [ |
| 32 | + { |
| 33 | + "qualified_name": "pipelex.plugins.openai.openai_llm_worker.OpenAILLMWorker", |
| 34 | + "reference_file": "pipelex/plugins/openai/openai_llm_worker.py", |
| 35 | + "reference_start_line": 26, |
| 36 | + "reference_end_line": 149 |
| 37 | + } |
| 38 | + ], |
| 39 | + "assigned_files": [ |
| 40 | + "pipelex/plugins/openai/__init__.py", |
| 41 | + "pipelex/plugins/openai/openai_llm_worker.py", |
| 42 | + "pipelex/plugins/openai/openai_llms.py", |
| 43 | + "pipelex/plugins/openai/openai_factory.py", |
| 44 | + "pipelex/plugins/openai/openai_func.py", |
| 45 | + "pipelex/plugins/openai/openai_img_gen_worker.py", |
| 46 | + "pipelex/plugins/openai/openai_img_gen_factory.py", |
| 47 | + "pipelex/plugins/openai/openai_img_gen_alt_worker.py" |
| 48 | + ], |
| 49 | + "can_expand": true |
| 50 | + }, |
| 51 | + { |
| 52 | + "name": "Google AI Adapter", |
| 53 | + "description": "Implements the specific logic to connect to, authenticate with, and interact with the Google AI API, formatting requests and parsing responses according to Google AI's specifications.", |
| 54 | + "referenced_source_code": [ |
| 55 | + { |
| 56 | + "qualified_name": "pipelex.plugins.google.google_llm_worker.GoogleLLMWorker", |
| 57 | + "reference_file": "pipelex/plugins/google/google_llm_worker.py", |
| 58 | + "reference_start_line": 29, |
| 59 | + "reference_end_line": 152 |
| 60 | + } |
| 61 | + ], |
| 62 | + "assigned_files": [ |
| 63 | + "pipelex/plugins/openai/vertexai_factory.py", |
| 64 | + "pipelex/plugins/google/__init__.py", |
| 65 | + "pipelex/plugins/google/google_factory.py", |
| 66 | + "pipelex/plugins/google/google_llm_worker.py" |
| 67 | + ], |
| 68 | + "can_expand": true |
| 69 | + }, |
| 70 | + { |
| 71 | + "name": "Anthropic Adapter", |
| 72 | + "description": "Implements the specific logic to connect to, authenticate with, and interact with the Anthropic API, formatting requests and parsing responses according to Anthropic's specifications.", |
| 73 | + "referenced_source_code": [ |
| 74 | + { |
| 75 | + "qualified_name": "pipelex.plugins.anthropic.anthropic_llm_worker.AnthropicLLMWorker", |
| 76 | + "reference_file": "pipelex/plugins/anthropic/anthropic_llm_worker.py", |
| 77 | + "reference_start_line": 47, |
| 78 | + "reference_end_line": 170 |
| 79 | + } |
| 80 | + ], |
| 81 | + "assigned_files": [ |
| 82 | + "pipelex/plugins/anthropic/__init__.py", |
| 83 | + "pipelex/plugins/anthropic/anthropic_exceptions.py", |
| 84 | + "pipelex/plugins/anthropic/anthropic_llm_worker.py", |
| 85 | + "pipelex/plugins/anthropic/anthropic_factory.py", |
| 86 | + "pipelex/plugins/anthropic/anthropic_llms.py" |
| 87 | + ], |
| 88 | + "can_expand": true |
| 89 | + }, |
| 90 | + { |
| 91 | + "name": "External AI Model APIs", |
| 92 | + "description": "Represents the actual external Large Language Model (LLM) and AI service APIs (e.g., OpenAI API, Google AI API, Anthropic API) that the AI Model Integration Subsystem interacts with. These are the ultimate targets of the integration.", |
| 93 | + "referenced_source_code": [ |
| 94 | + { |
| 95 | + "qualified_name": "pipelex.client.protocol.PipelineProtocol", |
| 96 | + "reference_file": "pipelex/client/protocol.py", |
| 97 | + "reference_start_line": null, |
| 98 | + "reference_end_line": null |
| 99 | + } |
| 100 | + ], |
| 101 | + "assigned_files": [], |
| 102 | + "can_expand": true |
| 103 | + }, |
| 104 | + { |
| 105 | + "name": "Pipe Operators", |
| 106 | + "description": "A component within the `pipelex` system responsible for delegating specific AI model calls to the `AI Model Integration Subsystem`. These operators likely represent the 'pipes' in the workflow that require AI model capabilities.", |
| 107 | + "referenced_source_code": [ |
| 108 | + { |
| 109 | + "qualified_name": "pipelex.builder.pipe.pipe_llm_spec.PipeLLMSpec", |
| 110 | + "reference_file": "pipelex/builder/pipe/pipe_llm_spec.py", |
| 111 | + "reference_start_line": 29, |
| 112 | + "reference_end_line": 87 |
| 113 | + } |
| 114 | + ], |
| 115 | + "assigned_files": [], |
| 116 | + "can_expand": false |
| 117 | + }, |
| 118 | + { |
| 119 | + "name": "Cognitive Tools/Agents", |
| 120 | + "description": "A component within the `pipelex` system that leverages integrated AI models for AI-driven capabilities, interacting with the `AI Model Integration Subsystem` to perform tasks like AI assistance or agent-based workflow generation.", |
| 121 | + "referenced_source_code": [ |
| 122 | + { |
| 123 | + "qualified_name": "pipelex.cogt.content_generation.content_generator.ContentGenerator", |
| 124 | + "reference_file": "pipelex/cogt/content_generation/content_generator.py", |
| 125 | + "reference_start_line": 37, |
| 126 | + "reference_end_line": 276 |
| 127 | + } |
| 128 | + ], |
| 129 | + "assigned_files": [], |
| 130 | + "can_expand": true |
| 131 | + }, |
| 132 | + { |
| 133 | + "name": "Unclassified", |
| 134 | + "description": "Component for all unclassified files and utility functions (Utility functions/External Libraries/Dependencies)", |
| 135 | + "referenced_source_code": [], |
| 136 | + "assigned_files": [ |
| 137 | + "pipelex/plugins/pypdfium2/__init__.py", |
| 138 | + "pipelex/plugins/pypdfium2/pypdfium2_worker.py" |
| 139 | + ], |
| 140 | + "can_expand": false |
| 141 | + } |
| 142 | + ], |
| 143 | + "components_relations": [ |
| 144 | + { |
| 145 | + "relation": "uses", |
| 146 | + "src_name": "AI Model Integration Subsystem", |
| 147 | + "dst_name": "OpenAI Adapter" |
| 148 | + }, |
| 149 | + { |
| 150 | + "relation": "uses", |
| 151 | + "src_name": "AI Model Integration Subsystem", |
| 152 | + "dst_name": "Google AI Adapter" |
| 153 | + }, |
| 154 | + { |
| 155 | + "relation": "uses", |
| 156 | + "src_name": "AI Model Integration Subsystem", |
| 157 | + "dst_name": "Anthropic Adapter" |
| 158 | + }, |
| 159 | + { |
| 160 | + "relation": "leverages", |
| 161 | + "src_name": "Pipe Operators", |
| 162 | + "dst_name": "AI Model Integration Subsystem" |
| 163 | + }, |
| 164 | + { |
| 165 | + "relation": "leverages", |
| 166 | + "src_name": "Cognitive Tools/Agents", |
| 167 | + "dst_name": "AI Model Integration Subsystem" |
| 168 | + }, |
| 169 | + { |
| 170 | + "relation": "interacts with", |
| 171 | + "src_name": "OpenAI Adapter", |
| 172 | + "dst_name": "External AI Model APIs" |
| 173 | + }, |
| 174 | + { |
| 175 | + "relation": "interacts with", |
| 176 | + "src_name": "Google AI Adapter", |
| 177 | + "dst_name": "External AI Model APIs" |
| 178 | + }, |
| 179 | + { |
| 180 | + "relation": "interacts with", |
| 181 | + "src_name": "Anthropic Adapter", |
| 182 | + "dst_name": "External AI Model APIs" |
| 183 | + } |
| 184 | + ] |
| 185 | +} |
0 commit comments