Spaces:
Paused
Paused
Update config_provider.py
Browse files- config_provider.py +7 -1
config_provider.py
CHANGED
|
@@ -67,6 +67,12 @@ class APIAuthConfig(BaseModel):
|
|
| 67 |
populate_by_name = True
|
| 68 |
|
| 69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 70 |
class APIConfig(BaseModel):
|
| 71 |
name: str
|
| 72 |
url: HttpUrl
|
|
@@ -78,12 +84,12 @@ class APIConfig(BaseModel):
|
|
| 78 |
proxy: Optional[str | ProxyConfig] = None
|
| 79 |
auth: Optional[APIAuthConfig] = None
|
| 80 |
response_prompt: Optional[str] = None
|
|
|
|
| 81 |
|
| 82 |
class Config:
|
| 83 |
extra = "allow"
|
| 84 |
populate_by_name = True
|
| 85 |
|
| 86 |
-
|
| 87 |
# ---------------- Intent / Param ---------
|
| 88 |
class ParameterConfig(BaseModel):
|
| 89 |
name: str
|
|
|
|
| 67 |
populate_by_name = True
|
| 68 |
|
| 69 |
|
| 70 |
+
class ResponseMappingConfig(BaseModel):
|
| 71 |
+
"""Response mapping configuration"""
|
| 72 |
+
variable_name: str = Field(..., pattern=r"^[a-z_][a-z0-9_]*$")
|
| 73 |
+
type: str = Field(..., pattern=r"^(int|float|bool|str|date)$")
|
| 74 |
+
json_path: str
|
| 75 |
+
|
| 76 |
class APIConfig(BaseModel):
|
| 77 |
name: str
|
| 78 |
url: HttpUrl
|
|
|
|
| 84 |
proxy: Optional[str | ProxyConfig] = None
|
| 85 |
auth: Optional[APIAuthConfig] = None
|
| 86 |
response_prompt: Optional[str] = None
|
| 87 |
+
response_mappings: List[ResponseMappingConfig] = [] # Yeni alan
|
| 88 |
|
| 89 |
class Config:
|
| 90 |
extra = "allow"
|
| 91 |
populate_by_name = True
|
| 92 |
|
|
|
|
| 93 |
# ---------------- Intent / Param ---------
|
| 94 |
class ParameterConfig(BaseModel):
|
| 95 |
name: str
|