Spaces:
Runtime error
Runtime error
| from dataclasses import dataclass | |
| from typing import Dict, List, Optional, Annotated | |
| from pydantic import BaseModel, BeforeValidator, Field, field_validator # Use Pydantic's Field | |
| from semantic_kernel.data import ( | |
| DistanceFunction, | |
| IndexKind, | |
| VectorStoreRecordDataField, | |
| VectorStoreRecordKeyField, | |
| VectorStoreRecordVectorField, | |
| vectorstoremodel | |
| ) | |
| class LampConnections(BaseModel): | |
| min: float | |
| max: float | |
| def convert_values(cls, v): | |
| v_str = str(v) | |
| # Handle comma decimals | |
| v_str = v_str.replace(',', '.') | |
| return float(v_str) | |
| class VoltageRange(BaseModel): | |
| min: float | |
| max: float | |
| def convert_values(cls, v): | |
| v_str = str(v) | |
| # Handle comma decimals | |
| v_str = v_str.replace(',', '.') | |
| return float(v_str) | |
| class PowerConverterVector(BaseModel): | |
| id: Annotated[str, VectorStoreRecordKeyField]=Field(None, alias="id") | |
| artnr: Annotated[int, VectorStoreRecordDataField()] = Field(..., alias="artnr") | |
| ip: Annotated[int, VectorStoreRecordDataField()] = Field(..., alias="ip") | |
| type: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="type") | |
| lamps: Dict[str, LampConnections] = None | |
| name: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="name") | |
| efficiency_full_load: Annotated[float, VectorStoreRecordDataField()] = Field(None, alias="efficiency_full_load") | |
| pdf_link: Annotated[str, VectorStoreRecordDataField()] = None | |
| converter_description: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="converter_description") | |
| nom_input_voltage: Optional[VoltageRange] = Field(None, alias="nom_input_voltage_v") | |
| output_voltage: Optional[VoltageRange] = Field(None, alias="output_voltage_v") | |
| unit: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="unit") | |
| price: Annotated[float, VectorStoreRecordDataField()] = Field(None, alias="listprice") | |
| life_cycle: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="lifecycle") | |
| size: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="size") | |
| ccr_amplitude: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="ccr_amplitude") | |
| dimmability: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="dimmability") | |
| dim_list_type: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="dimlist_type") | |
| gross_weight: Annotated[float, VectorStoreRecordDataField()] = Field(None, alias="gross_weight") | |
| strain_relief: Annotated[str, VectorStoreRecordDataField()] = Field(None, alias="strain_relief") | |
| embedding: Annotated[List[float], VectorStoreRecordVectorField( | |
| dimensions=1536, | |
| distance_function=DistanceFunction.COSINE_DISTANCE, | |
| index_kind=IndexKind.DISK_ANN | |
| )] = Field(default_factory=list) | |