typing and slight changes

This commit is contained in:
Alvin Ryanputra 2025-01-13 14:44:12 -08:00
parent 9948a722d9
commit 3f5f34b6c4

View file

@ -4,7 +4,6 @@ import datetime as dt
import logging
import uuid
from asyncio import Semaphore
from typing import Dict, List, Optional
from authapp.auth import AuthBearer
from ninja import NinjaAPI, Schema
@ -27,30 +26,30 @@ def get_semaphore(trace_id: str) -> Semaphore:
async def log_features(
trace_id: str,
user_id: str,
original_code: Optional[str] = None,
dependency_code: Optional[str] = None,
optimizations_raw: Optional[Dict[str, str]] = None,
optimizations_post: Optional[Dict[str, str]] = None,
explanations_raw: Optional[Dict[str, str]] = None,
explanations_post: Optional[Dict[str, str]] = None,
speedup_ratio: Optional[Dict[str, float | None]] = None,
original_runtime: Optional[float] = None,
optimized_runtime: Optional[Dict[str, float]] = None,
is_correct: Optional[Dict[str, bool | None]] = None,
generated_tests: Optional[List[str]] = None,
instrumented_generated_tests: Optional[List[str]] = None,
test_framework: Optional[str] = None,
datetime: Optional[dt.datetime] = None,
aiservice_commit: Optional[str] = None,
metadata: Optional[Dict[str, any]] = None,
experiment_metadata: Optional[Dict[str, str]] = None,
original_code: str | None = None,
dependency_code: str | None = None,
optimizations_raw: dict[str, str] | None = None,
optimizations_post: dict[str, str] | None = None,
explanations_raw: dict[str, str] | None = None,
explanations_post: dict[str, str] | None = None,
speedup_ratio: dict[str, float | None] | None = None,
original_runtime: float | None = None,
optimized_runtime: dict[str, float] | None = None,
is_correct: dict[str, bool | None] | None = None,
generated_tests: list[str] | None = None,
instrumented_generated_tests: list[str] | None = None,
test_framework: str | None = None,
datetime: dt.datetime | None = None,
aiservice_commit: str | None = None,
metadata: dict[str | any] | None = None,
experiment_metadata: dict[str, str] | None = None,
) -> None:
"""Log features of a code optimization run to the database.
:param trace_id: The client generated UUID of the optimization run. This is used to link the features together.
:param user_id: The user ID of the user who ran the optimization.
:param original_code: The original code that is allowed to be modified by the LLM.
:param dependency_code: The dependency code that is not allowed to be modified by the LLM.
:param original_code: The original code that the LLM is allowed to modify.
:param dependency_code: The dependency code that the LLM is not allowed to modify.
:param optimizations_raw: The raw optimizations that were generated by the language model.
:param optimizations_post: The final optimizations that were generated by the optimization endpoint.
:param explanations_raw: Raw Explanations generated by the language model.