naas-abi 1.0.10__py3-none-any.whl → 1.0.12__py3-none-any.whl

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.
naas_abi/__init__.py CHANGED
@@ -13,10 +13,64 @@ from naas_abi_core.services.triple_store.TripleStoreService import TripleStoreSe
13
13
  class ABIModule(BaseModule):
14
14
  dependencies: ModuleDependencies = ModuleDependencies(
15
15
  modules=[
16
- "naas_abi_marketplace.ai.chatgpt",
17
16
  "naas_abi_core.modules.templatablesparqlquery",
17
+ "naas_abi_marketplace.ai.chatgpt",
18
+ "naas_abi_marketplace.ai.claude#soft",
19
+ "naas_abi_marketplace.ai.deepseek#soft",
20
+ "naas_abi_marketplace.ai.gemini#soft",
21
+ "naas_abi_marketplace.ai.gemma#soft",
22
+ "naas_abi_marketplace.ai.grok#soft",
23
+ "naas_abi_marketplace.ai.llama#soft",
24
+ "naas_abi_marketplace.ai.mistral#soft",
25
+ "naas_abi_marketplace.ai.perplexity#soft",
18
26
  "naas_abi_marketplace.ai.qwen#soft",
27
+ "naas_abi_marketplace.applications.agicap#soft",
28
+ "naas_abi_marketplace.applications.airtable#soft",
29
+ "naas_abi_marketplace.applications.algolia#soft",
30
+ "naas_abi_marketplace.applications.arxiv#soft",
31
+ "naas_abi_marketplace.applications.aws#soft",
32
+ "naas_abi_marketplace.applications.bodo#soft",
33
+ "naas_abi_marketplace.applications.datagouv#soft",
34
+ "naas_abi_marketplace.applications.exchangeratesapi#soft",
35
+ "naas_abi_marketplace.applications.git#soft",
36
+ "naas_abi_marketplace.applications.github#soft",
37
+ "naas_abi_marketplace.applications.gmail#soft",
38
+ "naas_abi_marketplace.applications.google_analytics#soft",
39
+ "naas_abi_marketplace.applications.google_calendar#soft",
40
+ "naas_abi_marketplace.applications.google_drive#soft",
41
+ "naas_abi_marketplace.applications.google_maps#soft",
42
+ "naas_abi_marketplace.applications.google_search#soft",
43
+ "naas_abi_marketplace.applications.google_sheets#soft",
44
+ "naas_abi_marketplace.applications.hubspot#soft",
45
+ "naas_abi_marketplace.applications.instagram#soft",
46
+ "naas_abi_marketplace.applications.linkedin#soft",
47
+ "naas_abi_marketplace.applications.mercury#soft",
19
48
  "naas_abi_marketplace.applications.naas#soft",
49
+ "naas_abi_marketplace.applications.nebari#soft",
50
+ "naas_abi_marketplace.applications.newsapi#soft",
51
+ "naas_abi_marketplace.applications.notion#soft",
52
+ "naas_abi_marketplace.applications.openalex#soft",
53
+ "naas_abi_marketplace.applications.openrouter#soft",
54
+ "naas_abi_marketplace.applications.openweathermap#soft",
55
+ "naas_abi_marketplace.applications.pennylane#soft",
56
+ "naas_abi_marketplace.applications.postgres#soft",
57
+ "naas_abi_marketplace.applications.powerpoint#soft",
58
+ "naas_abi_marketplace.applications.pubmed#soft",
59
+ "naas_abi_marketplace.applications.qonto#soft",
60
+ "naas_abi_marketplace.applications.salesforce#soft",
61
+ "naas_abi_marketplace.applications.sanax#soft",
62
+ "naas_abi_marketplace.applications.sendgrid#soft",
63
+ "naas_abi_marketplace.applications.sharepoint#soft",
64
+ "naas_abi_marketplace.applications.slack#soft",
65
+ "naas_abi_marketplace.applications.spotify#soft",
66
+ "naas_abi_marketplace.applications.stripe#soft",
67
+ "naas_abi_marketplace.applications.twilio#soft",
68
+ "naas_abi_marketplace.applications.whatsapp_business#soft",
69
+ "naas_abi_marketplace.applications.worldbank#soft",
70
+ "naas_abi_marketplace.applications.yahoofinance#soft",
71
+ "naas_abi_marketplace.applications.youtube#soft",
72
+ "naas_abi_marketplace.applications.zoho#soft",
73
+ "naas_abi_marketplace.domains.support#soft",
20
74
  ],
21
75
  services=[Secret, TripleStoreService, ObjectStorageService],
22
76
  )
@@ -184,11 +184,10 @@ You can browse the data and run queries there."""
184
184
  logger.info(f"🔍 Checking module: {module.__class__.__module__}")
185
185
  if hasattr(module, "agents"):
186
186
  for agent in module.agents:
187
- if (
188
- agent is not None
189
- and hasattr(agent.New(), "name")
190
- and not agent.New().name.endswith("Research")
191
- ):
187
+ if agent is not None and agent.__name__ not in [
188
+ "ChatGPTResponsesAgent",
189
+ "PerplexityResearchAgent",
190
+ ]:
192
191
  logger.info(
193
192
  f"🤖 Adding agent: {agent.New().name} as sub-agent of {NAME}"
194
193
  )
@@ -0,0 +1,588 @@
1
+ Metadata-Version: 2.4
2
+ Name: naas-abi
3
+ Version: 1.0.12
4
+ Summary: Multi-agent orchestrator and knowledge graph management system for AI orchestration, providing comprehensive coordination of specialized AI agents and semantic data management capabilities
5
+ Author-email: Maxime Jublou <maxime@naas.ai>, Florent Ravenel <florent@naas.ai>, Jeremy Ravenel <jeremy@naas.ai>
6
+ Project-URL: Homepage, https://github.com/jupyter-naas/abi
7
+ Project-URL: Repository, https://github.com/jupyter-naas/abi/tree/main/libs/naas-abi
8
+ Requires-Python: <4,>=3.10
9
+ Description-Content-Type: text/markdown
10
+ Requires-Dist: naas-abi-core>=1.4.0
11
+ Requires-Dist: naas-abi-marketplace>=1.3.3
12
+ Requires-Dist: thefuzz>=0.22.1
13
+
14
+ # naas-abi
15
+
16
+ Multi-agent orchestrator and knowledge graph management system for AI orchestration, providing comprehensive coordination of specialized AI agents and semantic data management capabilities.
17
+
18
+ ## Overview
19
+
20
+ `naas-abi` is the central coordination hub for the ABI (Agentic Brain Infrastructure) ecosystem. It provides:
21
+
22
+ - **Multi-Agent Orchestration**: Central coordinator managing specialized AI agents (ChatGPT, Claude, Mistral, Gemini, Grok, Llama, Perplexity, Qwen, DeepSeek, Gemma)
23
+ - **Knowledge Graph Operations**: Complete CRUD operations for semantic data management
24
+ - **Ontology Engineering**: BFO-compliant entity extraction and SPARQL generation
25
+ - **Intelligent Routing**: Weighted decision hierarchy with context preservation
26
+ - **Multilingual Support**: Native French/English interactions with cultural awareness
27
+ - **Production Integration**: Event-driven triggers and YAML ontology publishing
28
+
29
+ ## Installation
30
+
31
+ ```bash
32
+ pip install naas-abi
33
+ ```
34
+
35
+ ## Core Components
36
+
37
+ ### ABIModule
38
+
39
+ The `ABIModule` is the main module that orchestrates the entire ABI system. It automatically loads marketplace modules (AI agents, applications, domain experts) and provides the core infrastructure.
40
+
41
+ **Configuration:**
42
+
43
+ ```yaml
44
+ modules:
45
+ - module: naas_abi
46
+ enabled: true
47
+ config:
48
+ datastore_path: "abi"
49
+ workspace_id: "{{ secret.WORKSPACE_ID }}"
50
+ storage_name: "{{ secret.STORAGE_NAME }}"
51
+ ```
52
+
53
+ **Dependencies:**
54
+
55
+ The module automatically loads marketplace modules as soft dependencies (optional):
56
+ - AI Agents: ChatGPT, Claude, Mistral, Gemini, Grok, Llama, Perplexity, Qwen, DeepSeek, Gemma
57
+ - Applications: GitHub, LinkedIn, Google services, and 50+ other integrations
58
+ - Domain Experts: Support, Software Engineering, Data Analysis, and more
59
+
60
+ **Required Services:**
61
+ - `Secret`: For credential management
62
+ - `TripleStoreService`: For knowledge graph operations
63
+ - `ObjectStorageService`: For file storage
64
+
65
+ ### Agents
66
+
67
+ #### AbiAgent
68
+
69
+ The main multi-agent orchestrator that coordinates specialized agents.
70
+
71
+ **Features:**
72
+ - Intelligent routing based on request type and context
73
+ - Context preservation across conversations
74
+ - Multilingual support (French/English)
75
+ - Weighted decision hierarchy for optimal agent selection
76
+ - Strategic advisory capabilities
77
+
78
+ **Usage:**
79
+
80
+ ```python
81
+ from naas_abi.agents.AbiAgent import create_agent
82
+
83
+ agent = create_agent()
84
+ response = agent.invoke("Route this to the best AI for code generation")
85
+ ```
86
+
87
+ **Routing Priorities:**
88
+ - Context Preservation (0.99): Maintains active conversations
89
+ - Identity/Strategic (0.95): Direct Abi responses
90
+ - Web Search (0.90): Routes to Perplexity/ChatGPT
91
+ - Creative/Multimodal (0.85): Routes to Gemini
92
+ - Truth Seeking (0.80): Routes to Grok
93
+ - Advanced Reasoning (0.75): Routes to Claude
94
+ - Code & Math (0.70): Routes to Mistral
95
+ - Knowledge Graph (0.68): Opens KG Explorer
96
+ - Internal Knowledge (0.65): Uses ontology agent
97
+ - Platform Operations (0.45): Routes to Naas agent
98
+ - Issue Management (0.25): Routes to Support agent
99
+
100
+ #### EntitytoSPARQLAgent
101
+
102
+ Extracts entities from natural language and generates SPARQL queries.
103
+
104
+ **Capabilities:**
105
+ - BFO-compliant entity extraction
106
+ - Automatic SPARQL query generation
107
+ - Entity relationship mapping
108
+ - Ontology-aware query construction
109
+
110
+ **Usage:**
111
+
112
+ ```python
113
+ from naas_abi.agents.EntitytoSPARQLAgent import create_agent
114
+
115
+ agent = create_agent()
116
+ response = agent.invoke(
117
+ "Extract entities from: 'John works at Microsoft as a software engineer'"
118
+ )
119
+ ```
120
+
121
+ #### KnowledgeGraphBuilderAgent
122
+
123
+ Provides complete CRUD operations for the knowledge graph.
124
+
125
+ **Capabilities:**
126
+ - Add individuals (entities) to the knowledge graph
127
+ - Update properties and relationships
128
+ - Remove individuals
129
+ - Merge duplicate entities
130
+ - Query and explore the graph
131
+
132
+ **Usage:**
133
+
134
+ ```python
135
+ from naas_abi.agents.KnowledgeGraphBuilderAgent import create_agent
136
+
137
+ agent = create_agent()
138
+ response = agent.invoke(
139
+ "Add a new organization called 'NaasAI' to the knowledge graph"
140
+ )
141
+ ```
142
+
143
+ #### OntologyEngineerAgent
144
+
145
+ Specialized agent for BFO ontology engineering and management.
146
+
147
+ **Capabilities:**
148
+ - Ontology creation and modification
149
+ - BFO-compliant structure validation
150
+ - Class and property definition
151
+ - Ontology publishing to YAML
152
+
153
+ **Usage:**
154
+
155
+ ```python
156
+ from naas_abi.agents.OntologyEngineerAgent import create_agent
157
+
158
+ agent = create_agent()
159
+ response = agent.invoke(
160
+ "Create a new ontology class for 'SoftwareProject' with properties"
161
+ )
162
+ ```
163
+
164
+ ### Workflows
165
+
166
+ #### AgentRecommendationWorkflow
167
+
168
+ Recommends the best AI agent for a given intent using SPARQL queries.
169
+
170
+ **Features:**
171
+ - Intent-to-query matching
172
+ - SPARQL template parameterization
173
+ - Weighted recommendation scoring
174
+ - Provider preference support
175
+
176
+ **Usage:**
177
+
178
+ ```python
179
+ from naas_abi.workflows.AgentRecommendationWorkflow import (
180
+ AgentRecommendationWorkflow,
181
+ AgentRecommendationConfiguration,
182
+ AgentRecommendationParameters
183
+ )
184
+
185
+ workflow = AgentRecommendationWorkflow(
186
+ AgentRecommendationConfiguration(queries_file_path="path/to/queries.ttl")
187
+ )
188
+
189
+ result = workflow.run(AgentRecommendationParameters(
190
+ intent_description="I need help with code generation",
191
+ provider_preference="openai"
192
+ ))
193
+ ```
194
+
195
+ #### ArtificialAnalysisWorkflow
196
+
197
+ Fetches and stores AI model data from the Artificial Analysis API.
198
+
199
+ **Features:**
200
+ - Fetches model performance data
201
+ - Filters for modules with active agents
202
+ - Saves timestamped JSON files
203
+ - Supports multiple endpoints (models, providers, categories)
204
+
205
+ **Usage:**
206
+
207
+ ```python
208
+ from naas_abi.workflows.ArtificialAnalysisWorkflow import (
209
+ ArtificialAnalysisWorkflow,
210
+ ArtificialAnalysisWorkflowConfiguration,
211
+ ArtificialAnalysisWorkflowParameters
212
+ )
213
+
214
+ workflow = ArtificialAnalysisWorkflow(
215
+ ArtificialAnalysisWorkflowConfiguration(
216
+ api_key="your_api_key",
217
+ base_url="https://artificialanalysis.ai/api/v2"
218
+ )
219
+ )
220
+
221
+ result = workflow.run(ArtificialAnalysisWorkflowParameters(
222
+ endpoint="models",
223
+ validate_agents_only=True
224
+ ))
225
+ ```
226
+
227
+ #### SearchIndividualWorkflow
228
+
229
+ Searches for individuals (entities) in the knowledge graph.
230
+
231
+ **Features:**
232
+ - Semantic search across entities
233
+ - Fuzzy matching support
234
+ - Property-based filtering
235
+ - Result ranking
236
+
237
+ #### GetSubjectGraphWorkflow
238
+
239
+ Retrieves the graph structure for a specific subject (entity).
240
+
241
+ **Features:**
242
+ - Entity relationship exploration
243
+ - Configurable depth traversal
244
+ - Graph visualization data
245
+ - Property and relationship extraction
246
+
247
+ #### GetObjectPropertiesFromClassWorkflow
248
+
249
+ Retrieves object properties for a given ontology class.
250
+
251
+ **Features:**
252
+ - Class property discovery
253
+ - BFO-compliant property extraction
254
+ - Relationship type identification
255
+ - Ontology hierarchy traversal
256
+
257
+ ### Pipelines
258
+
259
+ #### AddIndividualPipeline
260
+
261
+ Adds new individuals (entities) to the knowledge graph.
262
+
263
+ **Features:**
264
+ - Duplicate detection
265
+ - Automatic URI generation
266
+ - Property assignment
267
+ - Relationship creation
268
+
269
+ #### AIAgentOntologyGenerationPipeline
270
+
271
+ Generates AI agent ontologies from Artificial Analysis data.
272
+
273
+ **Features:**
274
+ - BFO-structured ontology generation
275
+ - Model-to-agent mapping
276
+ - Timestamped audit trails
277
+ - Automatic deployment to module folders
278
+
279
+ **Execution Steps:**
280
+ 1. Loads Artificial Analysis data
281
+ 2. Groups models by AI agent
282
+ 3. Generates ontologies in timestamped folders
283
+ 4. Deploys current versions to module folders
284
+ 5. Creates audit trail and summary
285
+
286
+ #### InsertDataSPARQLPipeline
287
+
288
+ Inserts data into the knowledge graph using SPARQL INSERT queries.
289
+
290
+ **Features:**
291
+ - SPARQL query execution
292
+ - Batch insert operations
293
+ - Validation and error handling
294
+ - Transaction support
295
+
296
+ #### MergeIndividualsPipeline
297
+
298
+ Merges duplicate individuals in the knowledge graph.
299
+
300
+ **Features:**
301
+ - Duplicate detection
302
+ - Property merging
303
+ - Relationship consolidation
304
+ - Audit logging
305
+
306
+ #### RemoveIndividualPipeline
307
+
308
+ Removes individuals from the knowledge graph.
309
+
310
+ **Features:**
311
+ - Safe deletion with validation
312
+ - Relationship cleanup
313
+ - Audit trail creation
314
+ - Backup generation
315
+
316
+ #### Update Pipelines
317
+
318
+ Specialized pipelines for updating specific entity types:
319
+ - `UpdateDataPropertyPipeline`: Updates data properties
320
+ - `UpdatePersonPipeline`: Updates person entities
321
+ - `UpdateCommercialOrganizationPipeline`: Updates organization entities
322
+ - `UpdateSkillPipeline`: Updates skill entities
323
+ - `UpdateLinkedInPagePipeline`: Updates LinkedIn page data
324
+ - `UpdateTickerPipeline`: Updates stock ticker information
325
+ - `UpdateWebsitePipeline`: Updates website information
326
+ - `UpdateLegalNamePipeline`: Updates legal names
327
+
328
+ ### Ontologies
329
+
330
+ The module includes a comprehensive ontology structure organized in a 4-level hierarchy:
331
+
332
+ 1. **Top-level**: BFO foundational ontologies
333
+ 2. **Mid-level**: Common Core Ontologies (CCO)
334
+ 3. **Domain-level**: Domain-specific ontologies
335
+ 4. **Application-level**: Use-case specific ontologies
336
+
337
+ **Location:** `naas_abi/ontologies/`
338
+
339
+ ### Models
340
+
341
+ The module supports multiple AI model configurations:
342
+
343
+ #### Cloud Mode (Default)
344
+ - **Model**: `gpt-4.1-mini`
345
+ - **Provider**: OpenAI
346
+ - **Temperature**: 0 (precise orchestration)
347
+ - **Requires**: `OPENAI_API_KEY`
348
+
349
+ #### Airgap Mode
350
+ - **Qwen3** (default): Temperature 0.7, 8K context
351
+ - **Gemma3** (alternative): Temperature 0.2, 8K context
352
+ - **Requires**: Docker Model Runner on `localhost:12434`
353
+
354
+ **Configuration:**
355
+
356
+ ```python
357
+ # Set environment variable
358
+ AI_MODE=cloud # or "airgap" or "local"
359
+ ```
360
+
361
+ ## CLI Tools
362
+
363
+ The module provides CLI commands for creating new components:
364
+
365
+ ```bash
366
+ # Create a new module
367
+ python -m naas_abi.cli create-module
368
+
369
+ # Create a new agent
370
+ python -m naas_abi.cli create-agent
371
+
372
+ # Create a new integration
373
+ python -m naas_abi.cli create-integration
374
+
375
+ # Create a new workflow
376
+ python -m naas_abi.cli create-workflow
377
+
378
+ # Create a new pipeline
379
+ python -m naas_abi.cli create-pipeline
380
+
381
+ # Create a new ontology
382
+ python -m naas_abi.cli create-ontology
383
+ ```
384
+
385
+ Each command provides an interactive wizard to guide you through the creation process.
386
+
387
+ ## Usage Examples
388
+
389
+ ### Basic Agent Interaction
390
+
391
+ ```python
392
+ from naas_abi_core.engine.Engine import Engine
393
+
394
+ # Initialize engine
395
+ engine = Engine()
396
+ engine.load(module_names=["naas_abi"])
397
+
398
+ # Get AbiAgent
399
+ from naas_abi.agents.AbiAgent import create_agent
400
+
401
+ agent = create_agent()
402
+
403
+ # Interact with agent
404
+ response = agent.invoke("What agents are available?")
405
+ print(response)
406
+ ```
407
+
408
+ ### Knowledge Graph Operations
409
+
410
+ ```python
411
+ from naas_abi.agents.KnowledgeGraphBuilderAgent import create_agent
412
+
413
+ kg_agent = create_agent()
414
+
415
+ # Add an organization
416
+ kg_agent.invoke("Add organization 'NaasAI' with website 'https://naas.ai'")
417
+
418
+ # Search for entities
419
+ from naas_abi.workflows.SearchIndividualWorkflow import (
420
+ SearchIndividualWorkflow,
421
+ SearchIndividualWorkflowConfiguration,
422
+ SearchIndividualWorkflowParameters
423
+ )
424
+
425
+ workflow = SearchIndividualWorkflow(
426
+ SearchIndividualWorkflowConfiguration(
427
+ triple_store=engine.services.triple_store
428
+ )
429
+ )
430
+
431
+ results = workflow.run(SearchIndividualWorkflowParameters(
432
+ search_term="NaasAI"
433
+ ))
434
+ ```
435
+
436
+ ### Workflow Execution
437
+
438
+ ```python
439
+ from naas_abi.workflows.AgentRecommendationWorkflow import (
440
+ AgentRecommendationWorkflow,
441
+ AgentRecommendationConfiguration,
442
+ AgentRecommendationParameters
443
+ )
444
+
445
+ workflow = AgentRecommendationWorkflow(
446
+ AgentRecommendationConfiguration(
447
+ queries_file_path="path/to/queries.ttl"
448
+ )
449
+ )
450
+
451
+ recommendations = workflow.run(AgentRecommendationParameters(
452
+ intent_description="I need help with data analysis",
453
+ provider_preference="anthropic"
454
+ ))
455
+ ```
456
+
457
+ ### Pipeline Execution
458
+
459
+ ```python
460
+ from naas_abi.pipelines.AddIndividualPipeline import (
461
+ AddIndividualPipeline,
462
+ AddIndividualPipelineConfiguration,
463
+ AddIndividualPipelineParameters
464
+ )
465
+
466
+ pipeline = AddIndividualPipeline(
467
+ AddIndividualPipelineConfiguration(
468
+ triple_store=engine.services.triple_store,
469
+ search_individual_configuration=SearchIndividualWorkflowConfiguration(
470
+ triple_store=engine.services.triple_store
471
+ )
472
+ )
473
+ )
474
+
475
+ graph = pipeline.run(AddIndividualPipelineParameters(
476
+ individual_label="New Company",
477
+ individual_type="CommercialOrganization"
478
+ ))
479
+ ```
480
+
481
+ ## Configuration
482
+
483
+ ### Environment Variables
484
+
485
+ | Variable | Values | Default | Description |
486
+ |----------|--------|---------|-------------|
487
+ | `AI_MODE` | `cloud` \| `airgap` \| `local` | `cloud` | Model deployment mode |
488
+ | `OPENAI_API_KEY` | API key | Required (cloud) | For cloud models |
489
+ | `NAAS_API_KEY` | API key | Optional | For production triggers |
490
+ | `ENV` | `dev` \| `prod` | `dev` | Environment mode |
491
+
492
+ ### Module Configuration
493
+
494
+ ```yaml
495
+ modules:
496
+ - module: naas_abi
497
+ enabled: true
498
+ config:
499
+ datastore_path: "abi"
500
+ workspace_id: "{{ secret.WORKSPACE_ID }}"
501
+ storage_name: "{{ secret.STORAGE_NAME }}"
502
+ ```
503
+
504
+ ## Key Features
505
+
506
+ ### 🔄 Context-Aware Orchestration
507
+ Preserves active conversations while enabling intelligent agent transitions.
508
+
509
+ ### 🌍 Multilingual Support
510
+ Native French/English code-switching with cultural awareness.
511
+
512
+ ### 🎯 Weighted Decision Routing
513
+ Sophisticated hierarchy for optimal agent selection based on request type.
514
+
515
+ ### 🔍 Knowledge Graph Integration
516
+ Direct access to SPARQL querying and semantic data exploration.
517
+
518
+ ### 🔒 Deployment Flexibility
519
+ Choice between cloud (OpenAI) and airgap (Docker Model Runner) models.
520
+
521
+ ### 📊 Strategic Advisory
522
+ Direct consultation capabilities for business and technical guidance.
523
+
524
+ ### 🛡️ Production Ready
525
+ Event-driven triggers, comprehensive testing, and error resilience.
526
+
527
+ ## Dependencies
528
+
529
+ - `naas-abi-core>=1.0.0`: Core ABI framework
530
+ - `naas-abi-marketplace>=1.0.0`: Marketplace modules and agents
531
+ - `thefuzz>=0.22.1`: Fuzzy string matching
532
+
533
+ ## Architecture
534
+
535
+ ### Module Structure
536
+
537
+ ```
538
+ naas_abi/
539
+ ├── agents/ # Agent implementations
540
+ │ ├── AbiAgent.py
541
+ │ ├── EntitytoSPARQLAgent.py
542
+ │ ├── KnowledgeGraphBuilderAgent.py
543
+ │ └── OntologyEngineerAgent.py
544
+ ├── workflows/ # Business logic workflows
545
+ │ ├── AgentRecommendationWorkflow.py
546
+ │ ├── ArtificialAnalysisWorkflow.py
547
+ │ ├── SearchIndividualWorkflow.py
548
+ │ ├── GetSubjectGraphWorkflow.py
549
+ │ └── GetObjectPropertiesFromClassWorkflow.py
550
+ ├── pipelines/ # Data processing pipelines
551
+ │ ├── AddIndividualPipeline.py
552
+ │ ├── AIAgentOntologyGenerationPipeline.py
553
+ │ ├── InsertDataSPARQLPipeline.py
554
+ │ ├── MergeIndividualsPipeline.py
555
+ │ └── Update*Pipeline.py
556
+ ├── ontologies/ # Ontology definitions
557
+ ├── models/ # Model configurations
558
+ ├── cli.py # CLI commands
559
+ └── __init__.py # Module initialization
560
+ ```
561
+
562
+ ## Testing
563
+
564
+ ```bash
565
+ # Run all tests
566
+ pytest naas_abi/ -v
567
+
568
+ # Test specific agent
569
+ pytest naas_abi/agents/AbiAgent_test.py -v
570
+
571
+ # Test workflows
572
+ pytest naas_abi/workflows/ -v
573
+
574
+ # Test pipelines
575
+ pytest naas_abi/pipelines/ -v
576
+ ```
577
+
578
+ ## See Also
579
+
580
+ - [ABI Main README](../../README.md) - Complete ABI framework documentation
581
+ - [naas-abi-core](../naas-abi-core/) - Core engine documentation
582
+ - [naas-abi-cli](../naas-abi-cli/) - CLI tool documentation
583
+ - [naas-abi-marketplace](../naas-abi-marketplace/) - Marketplace modules
584
+
585
+ ## License
586
+
587
+ MIT License
588
+
@@ -1,6 +1,6 @@
1
- naas_abi/__init__.py,sha256=y0syv4DSaZv87UaJEfNjN4VBvAF7aXqm_Y9EoVpyJAk,1538
1
+ naas_abi/__init__.py,sha256=at1v9W4RbH6G94w0tXXLSTeBnI2D_4nrmpAATd-TSdQ,4858
2
2
  naas_abi/cli.py,sha256=bfCcxGoQ_iSMhQDDX0-dRCyhc53Nawsy3WAruCNCL7M,27549
3
- naas_abi/agents/AbiAgent.py,sha256=dSIGuO2wlg45MM1FRm-TT9RdPPDk2cLFPxMuSWZSIOs,18344
3
+ naas_abi/agents/AbiAgent.py,sha256=4-o7lebG0_6dLX1rLJ9orXthl7ADQVnenZlgdAR4qRo,18323
4
4
  naas_abi/agents/AbiAgent_test.py,sha256=AKggG5RS3zDWnql1DFE7cF7riAHeOdKTZp44WN65Arg,5906
5
5
  naas_abi/agents/EntitytoSPARQLAgent.py,sha256=WO77rMoHF8Iq6jqDWEsvDHz-tup6SHeDIBLiy5wvGe8,57173
6
6
  naas_abi/agents/EntitytoSPARQLAgent_test.py,sha256=kx0gkbJoQZqt2_f_RINajwQU5EnHR1PsQx53rh7wJvA,2267
@@ -43,7 +43,7 @@ naas_abi/workflows/GetSubjectGraphWorkflow.py,sha256=EkgrFQPyaUVeC8sd7oVcxT9LUka
43
43
  naas_abi/workflows/GetSubjectGraphWorkflow_test.py,sha256=5B2r3QsdBIKwYOuHkEhnfEPKV6xpWZzwRQyhBintgpo,2067
44
44
  naas_abi/workflows/SearchIndividualWorkflow.py,sha256=6vWwywKNBlaosopPxiw0OpQnrn99wuiji0uA7jwKOn4,6572
45
45
  naas_abi/workflows/SearchIndividualWorkflow_test.py,sha256=ySEgDQFEbevAxkjX9W8No-7JG9A6bH6Y8bCi86aenVA,2762
46
- naas_abi-1.0.10.dist-info/METADATA,sha256=mi5oW1b2qoPPwxZ6exV_pCw6_IfkKulOXy7d3IOkRS4,553
47
- naas_abi-1.0.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
- naas_abi-1.0.10.dist-info/top_level.txt,sha256=Dhf3mhATB9-JuvBR8Y55OabvI-PCeQUqb5ae3EMmbeA,9
49
- naas_abi-1.0.10.dist-info/RECORD,,
46
+ naas_abi-1.0.12.dist-info/METADATA,sha256=NBJVLawQMX0VrG16Nnp_JGTR5T_-UTB3zKZibXZ8tCs,15791
47
+ naas_abi-1.0.12.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
+ naas_abi-1.0.12.dist-info/top_level.txt,sha256=Dhf3mhATB9-JuvBR8Y55OabvI-PCeQUqb5ae3EMmbeA,9
49
+ naas_abi-1.0.12.dist-info/RECORD,,
@@ -1,10 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: naas-abi
3
- Version: 1.0.10
4
- Summary: Multi-agent orchestrator and knowledge graph management system for AI orchestration, providing comprehensive coordination of specialized AI agents and semantic data management capabilities
5
- Author-email: Maxime Jublou <maxime@naas.ai>, Florent Ravenel <florent@naas.ai>, Jeremy Ravenel <jeremy@naas.ai>
6
- Requires-Python: <4,>=3.10
7
- Description-Content-Type: text/markdown
8
- Requires-Dist: naas-abi-core>=1.0.0-dev.1
9
- Requires-Dist: naas-abi-marketplace>=1.0.0-dev.1
10
- Requires-Dist: thefuzz>=0.22.1