ai_integration/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
ai_integration/admin.py |
(no function) |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/apps.py |
AiIntegrationConfig.ready |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/apps.py |
(no function) |
6 |
0 |
0 |
0 |
0 |
100% |
ai_integration/management/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
ai_integration/management/commands/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
ai_integration/models.py |
ChatSession.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/models.py |
QueryLog.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/models.py |
EmbeddingCache.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/models.py |
(no function) |
42 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/embedding_service.py |
EmbeddingService.__init__ |
2 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/embedding_service.py |
EmbeddingService.generate_embedding |
10 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/embedding_service.py |
EmbeddingService.get_content_hash |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/embedding_service.py |
EmbeddingService.get_or_create_embedding |
14 |
2 |
0 |
4 |
1 |
83% |
ai_integration/services/embedding_service.py |
EmbeddingService.update_model_embedding |
25 |
17 |
0 |
10 |
4 |
34% |
ai_integration/services/embedding_service.py |
EmbeddingService._extract_content_text |
17 |
6 |
0 |
16 |
1 |
61% |
ai_integration/services/embedding_service.py |
EmbeddingService.bulk_update_embeddings |
16 |
4 |
0 |
6 |
1 |
77% |
ai_integration/services/embedding_service.py |
(no function) |
18 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService.__init__ |
3 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService.generate_response |
13 |
1 |
0 |
2 |
0 |
93% |
ai_integration/services/rag_service.py |
RAGService._classify_query |
17 |
1 |
0 |
10 |
1 |
93% |
ai_integration/services/rag_service.py |
RAGService._build_context |
45 |
0 |
0 |
26 |
7 |
90% |
ai_integration/services/rag_service.py |
RAGService._generate_ai_response |
8 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService._get_system_prompt |
3 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService._generate_fallback_response |
5 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService._detect_language |
4 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService._calculate_confidence |
6 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/rag_service.py |
RAGService._format_sources |
18 |
6 |
0 |
10 |
1 |
61% |
ai_integration/services/rag_service.py |
RAGService._generate_error_response |
5 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/rag_service.py |
(no function) |
21 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/search_service.py |
SearchService.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
ai_integration/services/search_service.py |
SearchService.semantic_search |
20 |
14 |
0 |
12 |
1 |
28% |
ai_integration/services/search_service.py |
SearchService._search_model |
11 |
11 |
0 |
2 |
0 |
0% |
ai_integration/services/search_service.py |
SearchService._format_search_result |
10 |
1 |
0 |
8 |
1 |
89% |
ai_integration/services/search_service.py |
SearchService.search_by_category |
6 |
0 |
0 |
2 |
0 |
100% |
ai_integration/services/search_service.py |
SearchService.find_related_content |
20 |
11 |
0 |
8 |
2 |
39% |
ai_integration/services/search_service.py |
SearchService.keyword_search |
23 |
9 |
0 |
16 |
4 |
56% |
ai_integration/services/search_service.py |
(no function) |
18 |
0 |
0 |
0 |
0 |
100% |
ai_integration/signals.py |
update_story_embedding |
5 |
2 |
0 |
0 |
0 |
60% |
ai_integration/signals.py |
update_event_embedding |
5 |
2 |
0 |
0 |
0 |
60% |
ai_integration/signals.py |
update_heritage_embedding |
5 |
2 |
0 |
0 |
0 |
60% |
ai_integration/signals.py |
update_health_embedding |
5 |
2 |
0 |
0 |
0 |
60% |
ai_integration/signals.py |
(no function) |
14 |
0 |
0 |
0 |
0 |
100% |
ai_integration/urls.py |
(no function) |
4 |
0 |
0 |
0 |
0 |
100% |
ai_integration/views.py |
chat_endpoint |
17 |
0 |
0 |
4 |
0 |
100% |
ai_integration/views.py |
semantic_search |
13 |
0 |
0 |
2 |
0 |
100% |
ai_integration/views.py |
(no function) |
16 |
0 |
0 |
0 |
0 |
100% |
api/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
api/admin.py |
(no function) |
1 |
0 |
0 |
0 |
0 |
100% |
api/apps.py |
(no function) |
4 |
0 |
0 |
0 |
0 |
100% |
api/decorators.py |
api_login_required |
3 |
0 |
0 |
0 |
0 |
100% |
api/decorators.py |
api_login_required._wrapped_view |
3 |
0 |
0 |
2 |
0 |
100% |
api/decorators.py |
(no function) |
3 |
0 |
0 |
0 |
0 |
100% |
api/models.py |
(no function) |
1 |
0 |
0 |
0 |
0 |
100% |
api/urls.py |
(no function) |
4 |
0 |
0 |
0 |
0 |
100% |
api/views.py |
health_check |
1 |
0 |
0 |
0 |
0 |
100% |
api/views.py |
family_overview |
8 |
0 |
0 |
4 |
1 |
92% |
api/views.py |
ai_chat |
7 |
0 |
0 |
0 |
0 |
100% |
api/views.py |
(no function) |
14 |
0 |
0 |
0 |
0 |
100% |
family/__init__.py |
(no function) |
0 |
0 |
0 |
0 |
0 |
100% |
family/admin.py |
(no function) |
118 |
0 |
0 |
0 |
0 |
100% |
family/admin_mixins.py |
InlineCreateMixin.formfield_for_foreignkey |
4 |
4 |
0 |
2 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.formfield_for_manytomany |
4 |
1 |
0 |
2 |
1 |
67% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget |
10 |
10 |
0 |
0 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget.InlineCreateWidgetWrapper.__init__ |
4 |
4 |
0 |
0 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget.InlineCreateWidgetWrapper.render |
7 |
7 |
0 |
2 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget.InlineCreateWidgetWrapper._inject_button_into_transfer_widget |
13 |
13 |
0 |
6 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget.InlineCreateWidgetWrapper.__getattr__ |
1 |
1 |
0 |
0 |
0 |
0% |
family/admin_mixins.py |
InlineCreateMixin.get_inline_create_widget.InlineCreateWidgetWrapper.media |
4 |
4 |
0 |
0 |
0 |
0% |
family/admin_mixins.py |
QuickCreateMixin.get_urls |
4 |
0 |
0 |
0 |
0 |
100% |
family/admin_mixins.py |
QuickCreateMixin.quick_create_view |
18 |
18 |
0 |
6 |
0 |
0% |
family/admin_mixins.py |
(no function) |
16 |
0 |
0 |
0 |
0 |
100% |
family/admin_views.py |
get_family_dashboard_context |
20 |
3 |
0 |
6 |
3 |
77% |
family/admin_views.py |
FamilyAdminSite.index |
5 |
5 |
0 |
2 |
0 |
0% |
family/admin_views.py |
family_dashboard_context_processor |
3 |
0 |
0 |
2 |
0 |
100% |
family/admin_views.py |
(no function) |
13 |
0 |
0 |
0 |
0 |
100% |
family/apps.py |
(no function) |
4 |
0 |
0 |
0 |
0 |
100% |
family/forms.py |
PersonAdminForm.__init__ |
7 |
7 |
0 |
2 |
0 |
0% |
family/forms.py |
PersonAdminForm.calculate_age |
2 |
2 |
0 |
0 |
0 |
0% |
family/forms.py |
PersonAdminForm.clean_birth_date |
4 |
4 |
0 |
2 |
0 |
0% |
family/forms.py |
PersonAdminForm.clean_death_date |
8 |
8 |
0 |
6 |
0 |
0% |
family/forms.py |
StoryAdminForm.__init__ |
5 |
5 |
0 |
2 |
0 |
0% |
family/forms.py |
EventAdminForm.__init__ |
4 |
4 |
0 |
0 |
0 |
0% |
family/forms.py |
EventAdminForm.clean_start_date |
5 |
5 |
0 |
4 |
0 |
0% |
family/forms.py |
MultimediaAdminForm.__init__ |
5 |
5 |
0 |
2 |
0 |
0% |
family/forms.py |
MultimediaAdminForm.clean_file |
8 |
8 |
0 |
6 |
0 |
0% |
family/forms.py |
RelationshipAdminForm.__init__ |
4 |
4 |
0 |
0 |
0 |
0% |
family/forms.py |
RelationshipAdminForm.clean |
10 |
10 |
0 |
6 |
0 |
0% |
family/forms.py |
HealthAdminForm.__init__ |
4 |
4 |
0 |
2 |
0 |
0% |
family/forms.py |
LocationAdminForm.__init__ |
3 |
3 |
0 |
0 |
0 |
0% |
family/forms.py |
InstitutionAdminForm.__init__ |
3 |
3 |
0 |
0 |
0 |
0% |
family/forms.py |
validate_family_photo |
8 |
8 |
0 |
6 |
0 |
0% |
family/forms.py |
validate_chinese_name |
7 |
7 |
0 |
6 |
0 |
0% |
family/forms.py |
(no function) |
65 |
0 |
0 |
0 |
0 |
100% |
family/middleware.py |
SimpleAuthMiddleware.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/middleware.py |
SimpleAuthMiddleware.__call__ |
4 |
0 |
0 |
2 |
0 |
100% |
family/middleware.py |
(no function) |
4 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Person.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Location.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Institution.__str__ |
1 |
1 |
0 |
0 |
0 |
0% |
family/models.py |
Event.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Story.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Multimedia.__str__ |
1 |
1 |
0 |
0 |
0 |
0% |
family/models.py |
Relationship.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Health.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Heritage.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Planning.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Career.__str__ |
1 |
1 |
0 |
0 |
0 |
0% |
family/models.py |
Assets.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
Timeline.__str__ |
1 |
0 |
0 |
0 |
0 |
100% |
family/models.py |
(no function) |
202 |
0 |
0 |
0 |
0 |
100% |
family/views.py |
protected_react_serve |
2 |
0 |
0 |
0 |
0 |
100% |
family/views.py |
(no function) |
7 |
0 |
0 |
0 |
0 |
100% |
family/widgets.py |
FamilyAutoCompleteWidget.__init__ |
5 |
5 |
0 |
2 |
0 |
0% |
family/widgets.py |
FamilyAutoCompleteWidget.format_value |
3 |
3 |
0 |
2 |
0 |
0% |
family/widgets.py |
LocationAutoCompleteWidget.__init__ |
4 |
1 |
0 |
2 |
1 |
67% |
family/widgets.py |
InstitutionAutoCompleteWidget.__init__ |
5 |
1 |
0 |
2 |
1 |
71% |
family/widgets.py |
FamilyDateWidget.__init__ |
4 |
1 |
0 |
2 |
1 |
67% |
family/widgets.py |
FamilyDateWidget.render |
3 |
3 |
0 |
0 |
0 |
0% |
family/widgets.py |
FamilyPhotoWidget.__init__ |
4 |
1 |
0 |
2 |
1 |
67% |
family/widgets.py |
FamilyPhotoWidget.render |
3 |
3 |
0 |
0 |
0 |
0% |
family/widgets.py |
RelationshipSelectorWidget.__init__ |
4 |
1 |
0 |
2 |
1 |
67% |
family/widgets.py |
RelationshipSelectorWidget.render |
3 |
3 |
0 |
0 |
0 |
0% |
family/widgets.py |
RichTextWidget.__init__ |
4 |
0 |
0 |
2 |
1 |
83% |
family/widgets.py |
RichTextWidget.render |
3 |
3 |
0 |
0 |
0 |
0% |
family/widgets.py |
TagsWidget.__init__ |
4 |
4 |
0 |
2 |
0 |
0% |
family/widgets.py |
TagsWidget.render |
3 |
3 |
0 |
0 |
0 |
0% |
family/widgets.py |
(no function) |
52 |
0 |
0 |
0 |
0 |
100% |