aiecs 1.5.1__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.
- aiecs/__init__.py +72 -0
- aiecs/__main__.py +41 -0
- aiecs/aiecs_client.py +469 -0
- aiecs/application/__init__.py +10 -0
- aiecs/application/executors/__init__.py +10 -0
- aiecs/application/executors/operation_executor.py +363 -0
- aiecs/application/knowledge_graph/__init__.py +7 -0
- aiecs/application/knowledge_graph/builder/__init__.py +37 -0
- aiecs/application/knowledge_graph/builder/document_builder.py +375 -0
- aiecs/application/knowledge_graph/builder/graph_builder.py +356 -0
- aiecs/application/knowledge_graph/builder/schema_mapping.py +531 -0
- aiecs/application/knowledge_graph/builder/structured_pipeline.py +443 -0
- aiecs/application/knowledge_graph/builder/text_chunker.py +319 -0
- aiecs/application/knowledge_graph/extractors/__init__.py +27 -0
- aiecs/application/knowledge_graph/extractors/base.py +100 -0
- aiecs/application/knowledge_graph/extractors/llm_entity_extractor.py +327 -0
- aiecs/application/knowledge_graph/extractors/llm_relation_extractor.py +349 -0
- aiecs/application/knowledge_graph/extractors/ner_entity_extractor.py +244 -0
- aiecs/application/knowledge_graph/fusion/__init__.py +23 -0
- aiecs/application/knowledge_graph/fusion/entity_deduplicator.py +387 -0
- aiecs/application/knowledge_graph/fusion/entity_linker.py +343 -0
- aiecs/application/knowledge_graph/fusion/knowledge_fusion.py +580 -0
- aiecs/application/knowledge_graph/fusion/relation_deduplicator.py +189 -0
- aiecs/application/knowledge_graph/pattern_matching/__init__.py +21 -0
- aiecs/application/knowledge_graph/pattern_matching/pattern_matcher.py +344 -0
- aiecs/application/knowledge_graph/pattern_matching/query_executor.py +378 -0
- aiecs/application/knowledge_graph/profiling/__init__.py +12 -0
- aiecs/application/knowledge_graph/profiling/query_plan_visualizer.py +199 -0
- aiecs/application/knowledge_graph/profiling/query_profiler.py +223 -0
- aiecs/application/knowledge_graph/reasoning/__init__.py +27 -0
- aiecs/application/knowledge_graph/reasoning/evidence_synthesis.py +347 -0
- aiecs/application/knowledge_graph/reasoning/inference_engine.py +504 -0
- aiecs/application/knowledge_graph/reasoning/logic_form_parser.py +167 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/__init__.py +79 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/ast_builder.py +513 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/ast_nodes.py +630 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/ast_validator.py +654 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/error_handler.py +477 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/parser.py +390 -0
- aiecs/application/knowledge_graph/reasoning/logic_parser/query_context.py +217 -0
- aiecs/application/knowledge_graph/reasoning/logic_query_integration.py +169 -0
- aiecs/application/knowledge_graph/reasoning/query_planner.py +872 -0
- aiecs/application/knowledge_graph/reasoning/reasoning_engine.py +554 -0
- aiecs/application/knowledge_graph/retrieval/__init__.py +19 -0
- aiecs/application/knowledge_graph/retrieval/retrieval_strategies.py +596 -0
- aiecs/application/knowledge_graph/search/__init__.py +59 -0
- aiecs/application/knowledge_graph/search/hybrid_search.py +423 -0
- aiecs/application/knowledge_graph/search/reranker.py +295 -0
- aiecs/application/knowledge_graph/search/reranker_strategies.py +553 -0
- aiecs/application/knowledge_graph/search/text_similarity.py +398 -0
- aiecs/application/knowledge_graph/traversal/__init__.py +15 -0
- aiecs/application/knowledge_graph/traversal/enhanced_traversal.py +329 -0
- aiecs/application/knowledge_graph/traversal/path_scorer.py +269 -0
- aiecs/application/knowledge_graph/validators/__init__.py +13 -0
- aiecs/application/knowledge_graph/validators/relation_validator.py +189 -0
- aiecs/application/knowledge_graph/visualization/__init__.py +11 -0
- aiecs/application/knowledge_graph/visualization/graph_visualizer.py +321 -0
- aiecs/common/__init__.py +9 -0
- aiecs/common/knowledge_graph/__init__.py +17 -0
- aiecs/common/knowledge_graph/runnable.py +484 -0
- aiecs/config/__init__.py +16 -0
- aiecs/config/config.py +498 -0
- aiecs/config/graph_config.py +137 -0
- aiecs/config/registry.py +23 -0
- aiecs/core/__init__.py +46 -0
- aiecs/core/interface/__init__.py +34 -0
- aiecs/core/interface/execution_interface.py +152 -0
- aiecs/core/interface/storage_interface.py +171 -0
- aiecs/domain/__init__.py +289 -0
- aiecs/domain/agent/__init__.py +189 -0
- aiecs/domain/agent/base_agent.py +697 -0
- aiecs/domain/agent/exceptions.py +103 -0
- aiecs/domain/agent/graph_aware_mixin.py +559 -0
- aiecs/domain/agent/hybrid_agent.py +490 -0
- aiecs/domain/agent/integration/__init__.py +26 -0
- aiecs/domain/agent/integration/context_compressor.py +222 -0
- aiecs/domain/agent/integration/context_engine_adapter.py +252 -0
- aiecs/domain/agent/integration/retry_policy.py +219 -0
- aiecs/domain/agent/integration/role_config.py +213 -0
- aiecs/domain/agent/knowledge_aware_agent.py +646 -0
- aiecs/domain/agent/lifecycle.py +296 -0
- aiecs/domain/agent/llm_agent.py +300 -0
- aiecs/domain/agent/memory/__init__.py +12 -0
- aiecs/domain/agent/memory/conversation.py +197 -0
- aiecs/domain/agent/migration/__init__.py +14 -0
- aiecs/domain/agent/migration/conversion.py +160 -0
- aiecs/domain/agent/migration/legacy_wrapper.py +90 -0
- aiecs/domain/agent/models.py +317 -0
- aiecs/domain/agent/observability.py +407 -0
- aiecs/domain/agent/persistence.py +289 -0
- aiecs/domain/agent/prompts/__init__.py +29 -0
- aiecs/domain/agent/prompts/builder.py +161 -0
- aiecs/domain/agent/prompts/formatters.py +189 -0
- aiecs/domain/agent/prompts/template.py +255 -0
- aiecs/domain/agent/registry.py +260 -0
- aiecs/domain/agent/tool_agent.py +257 -0
- aiecs/domain/agent/tools/__init__.py +12 -0
- aiecs/domain/agent/tools/schema_generator.py +221 -0
- aiecs/domain/community/__init__.py +155 -0
- aiecs/domain/community/agent_adapter.py +477 -0
- aiecs/domain/community/analytics.py +481 -0
- aiecs/domain/community/collaborative_workflow.py +642 -0
- aiecs/domain/community/communication_hub.py +645 -0
- aiecs/domain/community/community_builder.py +320 -0
- aiecs/domain/community/community_integration.py +800 -0
- aiecs/domain/community/community_manager.py +813 -0
- aiecs/domain/community/decision_engine.py +879 -0
- aiecs/domain/community/exceptions.py +225 -0
- aiecs/domain/community/models/__init__.py +33 -0
- aiecs/domain/community/models/community_models.py +268 -0
- aiecs/domain/community/resource_manager.py +457 -0
- aiecs/domain/community/shared_context_manager.py +603 -0
- aiecs/domain/context/__init__.py +58 -0
- aiecs/domain/context/context_engine.py +989 -0
- aiecs/domain/context/conversation_models.py +354 -0
- aiecs/domain/context/graph_memory.py +467 -0
- aiecs/domain/execution/__init__.py +12 -0
- aiecs/domain/execution/model.py +57 -0
- aiecs/domain/knowledge_graph/__init__.py +19 -0
- aiecs/domain/knowledge_graph/models/__init__.py +52 -0
- aiecs/domain/knowledge_graph/models/entity.py +130 -0
- aiecs/domain/knowledge_graph/models/evidence.py +194 -0
- aiecs/domain/knowledge_graph/models/inference_rule.py +186 -0
- aiecs/domain/knowledge_graph/models/path.py +179 -0
- aiecs/domain/knowledge_graph/models/path_pattern.py +173 -0
- aiecs/domain/knowledge_graph/models/query.py +272 -0
- aiecs/domain/knowledge_graph/models/query_plan.py +187 -0
- aiecs/domain/knowledge_graph/models/relation.py +136 -0
- aiecs/domain/knowledge_graph/schema/__init__.py +23 -0
- aiecs/domain/knowledge_graph/schema/entity_type.py +135 -0
- aiecs/domain/knowledge_graph/schema/graph_schema.py +271 -0
- aiecs/domain/knowledge_graph/schema/property_schema.py +155 -0
- aiecs/domain/knowledge_graph/schema/relation_type.py +171 -0
- aiecs/domain/knowledge_graph/schema/schema_manager.py +496 -0
- aiecs/domain/knowledge_graph/schema/type_enums.py +205 -0
- aiecs/domain/task/__init__.py +13 -0
- aiecs/domain/task/dsl_processor.py +613 -0
- aiecs/domain/task/model.py +62 -0
- aiecs/domain/task/task_context.py +268 -0
- aiecs/infrastructure/__init__.py +24 -0
- aiecs/infrastructure/graph_storage/__init__.py +11 -0
- aiecs/infrastructure/graph_storage/base.py +601 -0
- aiecs/infrastructure/graph_storage/batch_operations.py +449 -0
- aiecs/infrastructure/graph_storage/cache.py +429 -0
- aiecs/infrastructure/graph_storage/distributed.py +226 -0
- aiecs/infrastructure/graph_storage/error_handling.py +390 -0
- aiecs/infrastructure/graph_storage/graceful_degradation.py +306 -0
- aiecs/infrastructure/graph_storage/health_checks.py +378 -0
- aiecs/infrastructure/graph_storage/in_memory.py +514 -0
- aiecs/infrastructure/graph_storage/index_optimization.py +483 -0
- aiecs/infrastructure/graph_storage/lazy_loading.py +410 -0
- aiecs/infrastructure/graph_storage/metrics.py +357 -0
- aiecs/infrastructure/graph_storage/migration.py +413 -0
- aiecs/infrastructure/graph_storage/pagination.py +471 -0
- aiecs/infrastructure/graph_storage/performance_monitoring.py +466 -0
- aiecs/infrastructure/graph_storage/postgres.py +871 -0
- aiecs/infrastructure/graph_storage/query_optimizer.py +635 -0
- aiecs/infrastructure/graph_storage/schema_cache.py +290 -0
- aiecs/infrastructure/graph_storage/sqlite.py +623 -0
- aiecs/infrastructure/graph_storage/streaming.py +495 -0
- aiecs/infrastructure/messaging/__init__.py +13 -0
- aiecs/infrastructure/messaging/celery_task_manager.py +383 -0
- aiecs/infrastructure/messaging/websocket_manager.py +298 -0
- aiecs/infrastructure/monitoring/__init__.py +34 -0
- aiecs/infrastructure/monitoring/executor_metrics.py +174 -0
- aiecs/infrastructure/monitoring/global_metrics_manager.py +213 -0
- aiecs/infrastructure/monitoring/structured_logger.py +48 -0
- aiecs/infrastructure/monitoring/tracing_manager.py +410 -0
- aiecs/infrastructure/persistence/__init__.py +24 -0
- aiecs/infrastructure/persistence/context_engine_client.py +187 -0
- aiecs/infrastructure/persistence/database_manager.py +333 -0
- aiecs/infrastructure/persistence/file_storage.py +754 -0
- aiecs/infrastructure/persistence/redis_client.py +220 -0
- aiecs/llm/__init__.py +86 -0
- aiecs/llm/callbacks/__init__.py +11 -0
- aiecs/llm/callbacks/custom_callbacks.py +264 -0
- aiecs/llm/client_factory.py +420 -0
- aiecs/llm/clients/__init__.py +33 -0
- aiecs/llm/clients/base_client.py +193 -0
- aiecs/llm/clients/googleai_client.py +181 -0
- aiecs/llm/clients/openai_client.py +131 -0
- aiecs/llm/clients/vertex_client.py +437 -0
- aiecs/llm/clients/xai_client.py +184 -0
- aiecs/llm/config/__init__.py +51 -0
- aiecs/llm/config/config_loader.py +275 -0
- aiecs/llm/config/config_validator.py +236 -0
- aiecs/llm/config/model_config.py +151 -0
- aiecs/llm/utils/__init__.py +10 -0
- aiecs/llm/utils/validate_config.py +91 -0
- aiecs/main.py +363 -0
- aiecs/scripts/__init__.py +3 -0
- aiecs/scripts/aid/VERSION_MANAGEMENT.md +97 -0
- aiecs/scripts/aid/__init__.py +19 -0
- aiecs/scripts/aid/version_manager.py +215 -0
- aiecs/scripts/dependance_check/DEPENDENCY_SYSTEM_SUMMARY.md +242 -0
- aiecs/scripts/dependance_check/README_DEPENDENCY_CHECKER.md +310 -0
- aiecs/scripts/dependance_check/__init__.py +17 -0
- aiecs/scripts/dependance_check/dependency_checker.py +938 -0
- aiecs/scripts/dependance_check/dependency_fixer.py +391 -0
- aiecs/scripts/dependance_check/download_nlp_data.py +396 -0
- aiecs/scripts/dependance_check/quick_dependency_check.py +270 -0
- aiecs/scripts/dependance_check/setup_nlp_data.sh +217 -0
- aiecs/scripts/dependance_patch/__init__.py +7 -0
- aiecs/scripts/dependance_patch/fix_weasel/README_WEASEL_PATCH.md +126 -0
- aiecs/scripts/dependance_patch/fix_weasel/__init__.py +11 -0
- aiecs/scripts/dependance_patch/fix_weasel/fix_weasel_validator.py +128 -0
- aiecs/scripts/dependance_patch/fix_weasel/fix_weasel_validator.sh +82 -0
- aiecs/scripts/dependance_patch/fix_weasel/patch_weasel_library.sh +188 -0
- aiecs/scripts/dependance_patch/fix_weasel/run_weasel_patch.sh +41 -0
- aiecs/scripts/tools_develop/README.md +449 -0
- aiecs/scripts/tools_develop/TOOL_AUTO_DISCOVERY.md +234 -0
- aiecs/scripts/tools_develop/__init__.py +21 -0
- aiecs/scripts/tools_develop/check_type_annotations.py +259 -0
- aiecs/scripts/tools_develop/validate_tool_schemas.py +422 -0
- aiecs/scripts/tools_develop/verify_tools.py +356 -0
- aiecs/tasks/__init__.py +1 -0
- aiecs/tasks/worker.py +172 -0
- aiecs/tools/__init__.py +299 -0
- aiecs/tools/apisource/__init__.py +99 -0
- aiecs/tools/apisource/intelligence/__init__.py +19 -0
- aiecs/tools/apisource/intelligence/data_fusion.py +381 -0
- aiecs/tools/apisource/intelligence/query_analyzer.py +413 -0
- aiecs/tools/apisource/intelligence/search_enhancer.py +388 -0
- aiecs/tools/apisource/monitoring/__init__.py +9 -0
- aiecs/tools/apisource/monitoring/metrics.py +303 -0
- aiecs/tools/apisource/providers/__init__.py +115 -0
- aiecs/tools/apisource/providers/base.py +664 -0
- aiecs/tools/apisource/providers/census.py +401 -0
- aiecs/tools/apisource/providers/fred.py +564 -0
- aiecs/tools/apisource/providers/newsapi.py +412 -0
- aiecs/tools/apisource/providers/worldbank.py +357 -0
- aiecs/tools/apisource/reliability/__init__.py +12 -0
- aiecs/tools/apisource/reliability/error_handler.py +375 -0
- aiecs/tools/apisource/reliability/fallback_strategy.py +391 -0
- aiecs/tools/apisource/tool.py +850 -0
- aiecs/tools/apisource/utils/__init__.py +9 -0
- aiecs/tools/apisource/utils/validators.py +338 -0
- aiecs/tools/base_tool.py +201 -0
- aiecs/tools/docs/__init__.py +121 -0
- aiecs/tools/docs/ai_document_orchestrator.py +599 -0
- aiecs/tools/docs/ai_document_writer_orchestrator.py +2403 -0
- aiecs/tools/docs/content_insertion_tool.py +1333 -0
- aiecs/tools/docs/document_creator_tool.py +1317 -0
- aiecs/tools/docs/document_layout_tool.py +1166 -0
- aiecs/tools/docs/document_parser_tool.py +994 -0
- aiecs/tools/docs/document_writer_tool.py +1818 -0
- aiecs/tools/knowledge_graph/__init__.py +17 -0
- aiecs/tools/knowledge_graph/graph_reasoning_tool.py +734 -0
- aiecs/tools/knowledge_graph/graph_search_tool.py +923 -0
- aiecs/tools/knowledge_graph/kg_builder_tool.py +476 -0
- aiecs/tools/langchain_adapter.py +542 -0
- aiecs/tools/schema_generator.py +275 -0
- aiecs/tools/search_tool/__init__.py +100 -0
- aiecs/tools/search_tool/analyzers.py +589 -0
- aiecs/tools/search_tool/cache.py +260 -0
- aiecs/tools/search_tool/constants.py +128 -0
- aiecs/tools/search_tool/context.py +216 -0
- aiecs/tools/search_tool/core.py +749 -0
- aiecs/tools/search_tool/deduplicator.py +123 -0
- aiecs/tools/search_tool/error_handler.py +271 -0
- aiecs/tools/search_tool/metrics.py +371 -0
- aiecs/tools/search_tool/rate_limiter.py +178 -0
- aiecs/tools/search_tool/schemas.py +277 -0
- aiecs/tools/statistics/__init__.py +80 -0
- aiecs/tools/statistics/ai_data_analysis_orchestrator.py +643 -0
- aiecs/tools/statistics/ai_insight_generator_tool.py +505 -0
- aiecs/tools/statistics/ai_report_orchestrator_tool.py +694 -0
- aiecs/tools/statistics/data_loader_tool.py +564 -0
- aiecs/tools/statistics/data_profiler_tool.py +658 -0
- aiecs/tools/statistics/data_transformer_tool.py +573 -0
- aiecs/tools/statistics/data_visualizer_tool.py +495 -0
- aiecs/tools/statistics/model_trainer_tool.py +487 -0
- aiecs/tools/statistics/statistical_analyzer_tool.py +459 -0
- aiecs/tools/task_tools/__init__.py +86 -0
- aiecs/tools/task_tools/chart_tool.py +732 -0
- aiecs/tools/task_tools/classfire_tool.py +922 -0
- aiecs/tools/task_tools/image_tool.py +447 -0
- aiecs/tools/task_tools/office_tool.py +684 -0
- aiecs/tools/task_tools/pandas_tool.py +635 -0
- aiecs/tools/task_tools/report_tool.py +635 -0
- aiecs/tools/task_tools/research_tool.py +392 -0
- aiecs/tools/task_tools/scraper_tool.py +715 -0
- aiecs/tools/task_tools/stats_tool.py +688 -0
- aiecs/tools/temp_file_manager.py +130 -0
- aiecs/tools/tool_executor/__init__.py +37 -0
- aiecs/tools/tool_executor/tool_executor.py +881 -0
- aiecs/utils/LLM_output_structor.py +445 -0
- aiecs/utils/__init__.py +34 -0
- aiecs/utils/base_callback.py +47 -0
- aiecs/utils/cache_provider.py +695 -0
- aiecs/utils/execution_utils.py +184 -0
- aiecs/utils/logging.py +1 -0
- aiecs/utils/prompt_loader.py +14 -0
- aiecs/utils/token_usage_repository.py +323 -0
- aiecs/ws/__init__.py +0 -0
- aiecs/ws/socket_server.py +52 -0
- aiecs-1.5.1.dist-info/METADATA +608 -0
- aiecs-1.5.1.dist-info/RECORD +302 -0
- aiecs-1.5.1.dist-info/WHEEL +5 -0
- aiecs-1.5.1.dist-info/entry_points.txt +10 -0
- aiecs-1.5.1.dist-info/licenses/LICENSE +225 -0
- aiecs-1.5.1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
# AIECS Dependency Checker
|
|
2
|
+
|
|
3
|
+
AIECS 包含一个全面的依赖检查系统,用于验证所有工具所需的系统级依赖、Python包和模型文件。
|
|
4
|
+
|
|
5
|
+
## 概述
|
|
6
|
+
|
|
7
|
+
AIECS 的各个工具需要不同的依赖项才能正常工作:
|
|
8
|
+
|
|
9
|
+
- **系统级依赖**: Java、Tesseract OCR、图像处理库等
|
|
10
|
+
- **Python包依赖**: 各种Python库和框架
|
|
11
|
+
- **模型文件**: spaCy模型、NLTK数据、Transformers模型等
|
|
12
|
+
|
|
13
|
+
## 命令行工具
|
|
14
|
+
|
|
15
|
+
### 1. 快速依赖检查
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
aiecs-quick-check
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
快速检查关键依赖项,适合安装后验证。
|
|
22
|
+
|
|
23
|
+
### 2. 完整依赖检查
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
aiecs-check-deps
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
执行完整的依赖检查,包括所有工具的所有依赖项。
|
|
30
|
+
|
|
31
|
+
### 3. 自动依赖修复
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
aiecs-fix-deps
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
自动安装缺失的依赖项(需要用户确认)。
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
aiecs-fix-deps --non-interactive
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
非交互模式,自动批准所有修复。
|
|
44
|
+
|
|
45
|
+
### 4. 仅检查模式
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
aiecs-fix-deps --check-only
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
只检查依赖项,不执行修复。
|
|
52
|
+
|
|
53
|
+
## 工具特定依赖
|
|
54
|
+
|
|
55
|
+
### Image Tool (图像处理工具)
|
|
56
|
+
|
|
57
|
+
**系统依赖**:
|
|
58
|
+
- Tesseract OCR 引擎
|
|
59
|
+
- Pillow 图像处理库的系统依赖
|
|
60
|
+
|
|
61
|
+
**Python包**:
|
|
62
|
+
- PIL (Pillow)
|
|
63
|
+
- pytesseract
|
|
64
|
+
|
|
65
|
+
**模型文件**:
|
|
66
|
+
- Tesseract 语言包 (eng, chi_sim, chi_tra, 等)
|
|
67
|
+
|
|
68
|
+
**安装命令**:
|
|
69
|
+
```bash
|
|
70
|
+
# Ubuntu/Debian
|
|
71
|
+
sudo apt-get install tesseract-ocr tesseract-ocr-eng
|
|
72
|
+
sudo apt-get install libjpeg-dev zlib1g-dev libpng-dev libtiff-dev libwebp-dev libopenjp2-7-dev
|
|
73
|
+
|
|
74
|
+
# macOS
|
|
75
|
+
brew install tesseract
|
|
76
|
+
brew install libjpeg zlib libpng libtiff webp openjpeg
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### ClassFire Tool (文本分类工具)
|
|
80
|
+
|
|
81
|
+
**Python包**:
|
|
82
|
+
- spacy
|
|
83
|
+
- transformers
|
|
84
|
+
- nltk
|
|
85
|
+
- rake_nltk
|
|
86
|
+
|
|
87
|
+
**模型文件**:
|
|
88
|
+
- spaCy 模型: en_core_web_sm, zh_core_web_sm
|
|
89
|
+
- Transformers 模型: facebook/bart-large-cnn, t5-base
|
|
90
|
+
- NLTK 数据: stopwords, punkt, wordnet, averaged_perceptron_tagger
|
|
91
|
+
|
|
92
|
+
**安装命令**:
|
|
93
|
+
```bash
|
|
94
|
+
# spaCy 模型
|
|
95
|
+
python -m spacy download en_core_web_sm
|
|
96
|
+
python -m spacy download zh_core_web_sm
|
|
97
|
+
|
|
98
|
+
# NLTK 数据
|
|
99
|
+
python -c "import nltk; nltk.download('stopwords')"
|
|
100
|
+
python -c "import nltk; nltk.download('punkt')"
|
|
101
|
+
python -c "import nltk; nltk.download('wordnet')"
|
|
102
|
+
python -c "import nltk; nltk.download('averaged_perceptron_tagger')"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Office Tool (办公文档处理工具)
|
|
106
|
+
|
|
107
|
+
**系统依赖**:
|
|
108
|
+
- Java 运行时环境 (OpenJDK 11+)
|
|
109
|
+
- Tesseract OCR (可选)
|
|
110
|
+
|
|
111
|
+
**Python包**:
|
|
112
|
+
- tika
|
|
113
|
+
- python-docx
|
|
114
|
+
- python-pptx
|
|
115
|
+
- openpyxl
|
|
116
|
+
- pdfplumber
|
|
117
|
+
- pytesseract
|
|
118
|
+
- PIL
|
|
119
|
+
|
|
120
|
+
**安装命令**:
|
|
121
|
+
```bash
|
|
122
|
+
# Ubuntu/Debian
|
|
123
|
+
sudo apt-get install openjdk-11-jdk
|
|
124
|
+
sudo apt-get install tesseract-ocr tesseract-ocr-eng
|
|
125
|
+
|
|
126
|
+
# macOS
|
|
127
|
+
brew install openjdk@11
|
|
128
|
+
brew install tesseract
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### Stats Tool (统计分析工具)
|
|
132
|
+
|
|
133
|
+
**系统依赖**:
|
|
134
|
+
- libreadstat (用于SAS/SPSS/Stata文件)
|
|
135
|
+
- Excel处理库
|
|
136
|
+
|
|
137
|
+
**Python包**:
|
|
138
|
+
- pandas
|
|
139
|
+
- numpy
|
|
140
|
+
- scipy
|
|
141
|
+
- scikit-learn
|
|
142
|
+
- statsmodels
|
|
143
|
+
- pyreadstat
|
|
144
|
+
- openpyxl
|
|
145
|
+
|
|
146
|
+
**安装命令**:
|
|
147
|
+
```bash
|
|
148
|
+
# Ubuntu/Debian
|
|
149
|
+
sudo apt-get install libreadstat-dev
|
|
150
|
+
sudo apt-get install libxml2-dev libxslt1-dev
|
|
151
|
+
|
|
152
|
+
# macOS
|
|
153
|
+
brew install readstat
|
|
154
|
+
brew install libxml2 libxslt
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Report Tool (报告生成工具)
|
|
158
|
+
|
|
159
|
+
**系统依赖**:
|
|
160
|
+
- WeasyPrint 依赖 (PDF生成)
|
|
161
|
+
- Matplotlib 依赖 (图表生成)
|
|
162
|
+
|
|
163
|
+
**Python包**:
|
|
164
|
+
- jinja2
|
|
165
|
+
- matplotlib
|
|
166
|
+
- weasyprint
|
|
167
|
+
- bleach
|
|
168
|
+
- markdown
|
|
169
|
+
- pandas
|
|
170
|
+
- openpyxl
|
|
171
|
+
- python-docx
|
|
172
|
+
- python-pptx
|
|
173
|
+
|
|
174
|
+
**安装命令**:
|
|
175
|
+
```bash
|
|
176
|
+
# Ubuntu/Debian
|
|
177
|
+
sudo apt-get install libcairo2-dev libpango1.0-dev libgdk-pixbuf2.0-dev libffi-dev shared-mime-info
|
|
178
|
+
sudo apt-get install libfreetype6-dev libpng-dev libjpeg-dev libtiff-dev libwebp-dev
|
|
179
|
+
|
|
180
|
+
# macOS
|
|
181
|
+
brew install cairo pango gdk-pixbuf libffi
|
|
182
|
+
brew install freetype libpng libjpeg libtiff webp
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Scraper Tool (网页抓取工具)
|
|
186
|
+
|
|
187
|
+
**系统依赖**:
|
|
188
|
+
- Playwright 浏览器二进制文件
|
|
189
|
+
- Playwright 系统依赖
|
|
190
|
+
|
|
191
|
+
**Python包**:
|
|
192
|
+
- playwright
|
|
193
|
+
- scrapy
|
|
194
|
+
- httpx
|
|
195
|
+
- beautifulsoup4
|
|
196
|
+
- lxml
|
|
197
|
+
|
|
198
|
+
**安装命令**:
|
|
199
|
+
```bash
|
|
200
|
+
# 安装 Playwright 浏览器
|
|
201
|
+
playwright install
|
|
202
|
+
|
|
203
|
+
# 安装系统依赖
|
|
204
|
+
playwright install-deps
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
## 安装后自动检查
|
|
208
|
+
|
|
209
|
+
当您安装 AIECS 时,系统会自动运行依赖检查:
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
pip install aiecs
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
安装过程中会显示:
|
|
216
|
+
1. Weasel 库补丁应用
|
|
217
|
+
2. NLP 数据下载
|
|
218
|
+
3. 系统依赖检查
|
|
219
|
+
|
|
220
|
+
## 故障排除
|
|
221
|
+
|
|
222
|
+
### 常见问题
|
|
223
|
+
|
|
224
|
+
1. **Java 未安装**
|
|
225
|
+
```bash
|
|
226
|
+
# 检查 Java 版本
|
|
227
|
+
java -version
|
|
228
|
+
|
|
229
|
+
# 安装 Java
|
|
230
|
+
sudo apt-get install openjdk-11-jdk # Ubuntu/Debian
|
|
231
|
+
brew install openjdk@11 # macOS
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
2. **Tesseract OCR 未安装**
|
|
235
|
+
```bash
|
|
236
|
+
# 检查 Tesseract
|
|
237
|
+
tesseract --version
|
|
238
|
+
|
|
239
|
+
# 安装 Tesseract
|
|
240
|
+
sudo apt-get install tesseract-ocr tesseract-ocr-eng # Ubuntu/Debian
|
|
241
|
+
brew install tesseract # macOS
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
3. **spaCy 模型未下载**
|
|
245
|
+
```bash
|
|
246
|
+
# 下载 spaCy 模型
|
|
247
|
+
python -m spacy download en_core_web_sm
|
|
248
|
+
python -m spacy download zh_core_web_sm
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
4. **Playwright 浏览器未安装**
|
|
252
|
+
```bash
|
|
253
|
+
# 安装 Playwright 浏览器
|
|
254
|
+
playwright install
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### 手动修复
|
|
258
|
+
|
|
259
|
+
如果自动修复失败,您可以手动安装缺失的依赖:
|
|
260
|
+
|
|
261
|
+
1. 运行完整检查:
|
|
262
|
+
```bash
|
|
263
|
+
aiecs-check-deps
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
2. 根据报告中的安装命令手动安装
|
|
267
|
+
|
|
268
|
+
3. 重新运行检查验证
|
|
269
|
+
|
|
270
|
+
### 日志文件
|
|
271
|
+
|
|
272
|
+
依赖检查会生成以下日志文件:
|
|
273
|
+
- `dependency_check.log` - 详细检查日志
|
|
274
|
+
- `dependency_fix.log` - 修复过程日志
|
|
275
|
+
- `dependency_report.txt` - 检查报告
|
|
276
|
+
|
|
277
|
+
## 开发人员说明
|
|
278
|
+
|
|
279
|
+
### 添加新的依赖检查
|
|
280
|
+
|
|
281
|
+
1. 在 `dependency_checker.py` 中添加新的检查函数
|
|
282
|
+
2. 在相应的工具依赖检查函数中调用
|
|
283
|
+
3. 更新安装命令映射
|
|
284
|
+
|
|
285
|
+
### 自定义检查
|
|
286
|
+
|
|
287
|
+
您可以创建自定义的依赖检查脚本:
|
|
288
|
+
|
|
289
|
+
```python
|
|
290
|
+
from aiecs.scripts.dependency_checker import DependencyChecker
|
|
291
|
+
|
|
292
|
+
checker = DependencyChecker()
|
|
293
|
+
tools = checker.check_all_dependencies()
|
|
294
|
+
report = checker.generate_report(tools)
|
|
295
|
+
print(report)
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
## 支持
|
|
299
|
+
|
|
300
|
+
如果您遇到依赖问题,请:
|
|
301
|
+
|
|
302
|
+
1. 运行 `aiecs-check-deps` 获取详细报告
|
|
303
|
+
2. 查看生成的日志文件
|
|
304
|
+
3. 尝试使用 `aiecs-fix-deps` 自动修复
|
|
305
|
+
4. 如果问题仍然存在,请提交 issue 到项目仓库
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""
|
|
2
|
+
依赖检查和修复工具
|
|
3
|
+
|
|
4
|
+
提供 AIECS 系统依赖的检查、修复和 NLP 数据下载功能。
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from .dependency_checker import main as dependency_checker_main
|
|
8
|
+
from .dependency_fixer import main as dependency_fixer_main
|
|
9
|
+
from .quick_dependency_check import main as quick_dependency_check_main
|
|
10
|
+
from .download_nlp_data import main as download_nlp_data_main
|
|
11
|
+
|
|
12
|
+
__all__ = [
|
|
13
|
+
"dependency_checker_main",
|
|
14
|
+
"dependency_fixer_main",
|
|
15
|
+
"quick_dependency_check_main",
|
|
16
|
+
"download_nlp_data_main",
|
|
17
|
+
]
|