mirror of
https://github.com/hanzoai/insights.git
synced 2026-11-03 00:52:32 +00:00
Mechanically re-derived: bin/debrand runs over a fresh import of posthog/posthog@fa1a9a60d4 (2026-08-06). The pipeline (.hanzo/workflows), the Dockerfiles and bin/docker* entrypoints, compose files, LLM.md and the squashed initial migration are restored from the shipped tree, same as the previous import. The prune's import-closure guard kept 21 products the new core now imports; dropping them is a refactor now, recorded rather than forced.
139 lines
5.3 KiB
Python
139 lines
5.3 KiB
Python
from insights.api.routing import RouterRegistry
|
|
from insights.settings import CLOUD_DEPLOYMENT, DEBUG, TEST
|
|
|
|
from products.ai_observability.backend.api import (
|
|
AIBlobViewSet,
|
|
AIObservabilityClusteringRunViewSet,
|
|
AIObservabilityOfflineEvaluationsViewSet,
|
|
AIObservabilitySummarizationViewSet,
|
|
AIObservabilityTextReprViewSet,
|
|
AIObservabilityTranslateViewSet,
|
|
ClusteringConfigViewSet,
|
|
ClusteringJobViewSet,
|
|
DatasetItemViewSet,
|
|
DatasetViewSet,
|
|
EvaluationConfigViewSet,
|
|
EvaluationDirectoryViewSet,
|
|
EvaluationReportViewSet,
|
|
EvaluationRunViewSet,
|
|
EvaluationViewSet,
|
|
LLMEvaluationSummaryViewSet,
|
|
LLMModelsViewSet,
|
|
LLMProviderKeyValidationViewSet,
|
|
LLMProviderKeyViewSet,
|
|
LLMProxyViewSet,
|
|
ParserRecipeViewSet,
|
|
PersonalSpendInternalViewSet,
|
|
PersonalSpendViewSet,
|
|
ReviewQueueItemViewSet,
|
|
ReviewQueueViewSet,
|
|
ScoreDefinitionViewSet,
|
|
TaggerViewSet,
|
|
TraceReviewViewSet,
|
|
)
|
|
|
|
|
|
def register_routes(routers: RouterRegistry) -> None:
|
|
routers.projects.register(r"ai_blob", AIBlobViewSet, "project_ai_blob", ["project_id"])
|
|
routers.root.register(r"llm_proxy", LLMProxyViewSet, "llm_proxy")
|
|
# @me/spend is only useful where billing data is available; mirrors the
|
|
# CLOUD/DEBUG/TEST gate the registration carried inline.
|
|
if CLOUD_DEPLOYMENT == "US" or DEBUG or TEST:
|
|
routers.root.register(r"llm_analytics/@me/spend", PersonalSpendViewSet, "personal_spend")
|
|
# HMAC-authenticated receiver for the EU→US personal-spend proxy.
|
|
routers.root.register(r"llm_analytics/internal/spend", PersonalSpendInternalViewSet, "personal_spend_internal")
|
|
|
|
routers.projects.register(
|
|
r"llm_analytics/parser_recipes", ParserRecipeViewSet, "project_llm_analytics_parser_recipes", ["team_id"]
|
|
)
|
|
routers.projects.register(r"datasets", DatasetViewSet, "project_datasets", ["team_id"])
|
|
routers.projects.register(r"dataset_items", DatasetItemViewSet, "project_dataset_items", ["team_id"])
|
|
routers.projects.register(r"evaluations", EvaluationViewSet, "project_evaluations", ["team_id"])
|
|
routers.projects.register(
|
|
r"evaluation_directories",
|
|
EvaluationDirectoryViewSet,
|
|
"project_evaluation_directories",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(r"taggers", TaggerViewSet, "project_taggers", ["team_id"])
|
|
routers.projects.register(r"evaluation_runs", EvaluationRunViewSet, "project_evaluation_runs", ["team_id"])
|
|
routers.projects.register(
|
|
r"llm_analytics/text_repr", AIObservabilityTextReprViewSet, "project_llm_analytics_text_repr", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/summarization",
|
|
AIObservabilitySummarizationViewSet,
|
|
"project_llm_analytics_summarization",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/evaluation_summary",
|
|
LLMEvaluationSummaryViewSet,
|
|
"project_llm_analytics_evaluation_summary",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/translate", AIObservabilityTranslateViewSet, "project_llm_analytics_translate", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/provider_keys", LLMProviderKeyViewSet, "project_llm_analytics_provider_keys", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/provider_key_validations",
|
|
LLMProviderKeyValidationViewSet,
|
|
"project_llm_analytics_provider_key_validations",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(r"llm_analytics/models", LLMModelsViewSet, "project_llm_analytics_models", ["team_id"])
|
|
routers.projects.register(
|
|
r"llm_analytics/evaluation_config",
|
|
EvaluationConfigViewSet,
|
|
"project_llm_analytics_evaluation_config",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/clustering_runs",
|
|
AIObservabilityClusteringRunViewSet,
|
|
"project_llm_analytics_clustering_runs",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/clustering_config",
|
|
ClusteringConfigViewSet,
|
|
"project_llm_analytics_clustering_config",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/clustering_jobs", ClusteringJobViewSet, "project_llm_analytics_clustering_jobs", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/offline_evaluations",
|
|
AIObservabilityOfflineEvaluationsViewSet,
|
|
"project_llm_analytics_offline_evaluations",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/review_queue_items",
|
|
ReviewQueueItemViewSet,
|
|
"project_llm_analytics_review_queue_items",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/review_queues", ReviewQueueViewSet, "project_llm_analytics_review_queues", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/score_definitions",
|
|
ScoreDefinitionViewSet,
|
|
"project_llm_analytics_score_definitions",
|
|
["team_id"],
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/trace_reviews", TraceReviewViewSet, "project_llm_analytics_trace_reviews", ["team_id"]
|
|
)
|
|
routers.projects.register(
|
|
r"llm_analytics/evaluation_reports",
|
|
EvaluationReportViewSet,
|
|
"project_llm_analytics_evaluation_reports",
|
|
["team_id"],
|
|
)
|