{
"event": "PreToolUse",
"tool_name": "Grep",
"tool_input": {
"pattern": "analyze_document\\(",
"path": "\/var\/www\/scripts\/pipeline",
"output_mode": "content",
"-B": 5,
"-A": 2
}
}
{
"tool_response": {
"mode": "content",
"numFiles": 0,
"filenames": [],
"content": "\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-73- )\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-74- doc = cursor.fetchone()\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-75- cursor.close()\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-76-\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-77- if doc and doc[\"full_text\"]:\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py:78: results[\"document\"] = extractor.analyze_document(document_id, doc[\"full_text\"][:10000])\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-79-\n\/var\/www\/scripts\/pipeline\/knowledge\/utils.py-80- return results\n--\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-96- \"semantics\": len(semantics),\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-97- \"ontology\": len(ontology),\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-98- \"taxonomy\": len(taxonomy),\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-99- }\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-100-\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py:101: def analyze_document(self, document_id: int, text: str) -> dict:\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-102- \"\"\"Vollständige Wissensanalyse für ein Dokument (konsolidiert).\"\"\"\n\/var\/www\/scripts\/pipeline\/knowledge\/analyzer.py-103- db.log(\"INFO\", f\"Starte Dokumentanalyse für document_id={document_id}\")\n--\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-15-from .relation_extractor import extract_relations\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-16-from .semantic_analyzer import analyze_chunks_semantics\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-17-from .taxonomy_classifier import classify_taxonomy\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-18-\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-19-\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py:20:def analyze_document(document_id: int, text: str, use_anthropic: bool = True, progress=None) -> dict:\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-21- \"\"\"\n\/var\/www\/scripts\/pipeline\/analyzers\/document_analyzer.py-22- Full semantic analysis of a document.\n--\n\/var\/www\/scripts\/pipeline\/vision.py-126- return {\"success\": False, \"error\": str(e)}\n\/var\/www\/scripts\/pipeline\/vision.py-127- except Exception as e:\n\/var\/www\/scripts\/pipeline\/vision.py-128- return {\"success\": False, \"error\": str(e)}\n\/var\/www\/scripts\/pipeline\/vision.py-129-\n\/var\/www\/scripts\/pipeline\/vision.py-130-\n\/var\/www\/scripts\/pipeline\/vision.py:131:def analyze_document(file_path, model=DEFAULT_VISION_MODEL, store_images=False, image_dir=None, progress=None):\n\/var\/www\/scripts\/pipeline\/vision.py-132- \"\"\"\n\/var\/www\/scripts\/pipeline\/vision.py-133- Analyze all pages of a PDF document.\n--\n\/var\/www\/scripts\/pipeline\/vision.py-204- \"\"\"\n\/var\/www\/scripts\/pipeline\/vision.py-205- Store page analysis results in database.\n\/var\/www\/scripts\/pipeline\/vision.py-206-\n\/var\/www\/scripts\/pipeline\/vision.py-207- Args:\n\/var\/www\/scripts\/pipeline\/vision.py-208- document_id: ID of the document in documents table\n\/var\/www\/scripts\/pipeline\/vision.py:209: page_results: List of page analysis results from analyze_document()\n\/var\/www\/scripts\/pipeline\/vision.py-210-\n\/var\/www\/scripts\/pipeline\/vision.py-211- Returns:\n--\n\/var\/www\/scripts\/pipeline\/vision.py-294- # Note: prompt_parts built for future custom prompt support\n\/var\/www\/scripts\/pipeline\/vision.py-295- _ = \"\\n\".join(prompt_parts) # Currently unused, reserved for custom prompts\n\/var\/www\/scripts\/pipeline\/vision.py-296-\n\/var\/www\/scripts\/pipeline\/vision.py-297- try:\n\/var\/www\/scripts\/pipeline\/vision.py-298- # Analyze document\n\/var\/www\/scripts\/pipeline\/vision.py:299: results = analyze_document(file_path, model=model, store_images=store_images, progress=progress)\n\/var\/www\/scripts\/pipeline\/vision.py-300-\n\/var\/www\/scripts\/pipeline\/vision.py-301- # Store results\n--\n\/var\/www\/scripts\/pipeline\/vision.py-365- else:\n\/var\/www\/scripts\/pipeline\/vision.py-366- print(f\"Error: {result['error']}\")\n\/var\/www\/scripts\/pipeline\/vision.py-367- else:\n\/var\/www\/scripts\/pipeline\/vision.py-368- # Analyze entire document\n\/var\/www\/scripts\/pipeline\/vision.py-369- print(f\"Analyzing document: {file_path}\")\n\/var\/www\/scripts\/pipeline\/vision.py:370: results = analyze_document(file_path, store_images=True)\n\/var\/www\/scripts\/pipeline\/vision.py-371-\n\/var\/www\/scripts\/pipeline\/vision.py-372- print(f\"\\n{'=' * 60}\")\n--\n\/var\/www\/scripts\/pipeline\/step_transform.py-134- dict: Analysis result\n\/var\/www\/scripts\/pipeline\/step_transform.py-135- \"\"\"\n\/var\/www\/scripts\/pipeline\/step_transform.py-136- if self.progress:\n\/var\/www\/scripts\/pipeline\/step_transform.py-137- self.progress.update_step(\"analyze\")\n\/var\/www\/scripts\/pipeline\/step_transform.py-138-\n\/var\/www\/scripts\/pipeline\/step_transform.py:139: analysis = analyze_document(doc_id, full_text, progress=self.progress)\n\/var\/www\/scripts\/pipeline\/step_transform.py-140- self.db.log(\"INFO\", f\"Analysis complete: {analysis}\")\n\/var\/www\/scripts\/pipeline\/step_transform.py-141-",
"numLines": 71
}
}