ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
from typing import Sequence
|
||||
from pydantic import BaseModel, Field, model_validator
|
||||
from typing import Optional
|
||||
|
||||
|
||||
class MetricTemplate(BaseModel):
|
||||
"""
|
||||
MetricTemplate is a class for defining a metric template.
|
||||
"""
|
||||
type: str
|
||||
name: str
|
||||
description: Optional[str] = None
|
||||
unit: Optional[str] = Field(default="1")
|
||||
labels: Optional[list[str]] = None
|
||||
buckets: Optional[Sequence[float]] = None
|
||||
|
||||
@model_validator(mode='before')
|
||||
def set_default_description(cls, values):
|
||||
"""
|
||||
Set the default description if it is not set.
|
||||
"""
|
||||
if 'description' not in values or values['description'] is None:
|
||||
values['description'] = values['name']
|
||||
return values
|
||||
|
||||
|
||||
class MetricTemplates:
|
||||
REQUEST_COUNT = MetricTemplate(**{
|
||||
"type": "counter",
|
||||
"name": "request_count",
|
||||
"description": "The number of requests received",
|
||||
"unit": "1",
|
||||
"labels": ["method", "status"]
|
||||
})
|
||||
|
||||
REQUEST_LATENCY = MetricTemplate(**{
|
||||
"type": "histogram",
|
||||
"name": "request_latency",
|
||||
"description": "The latency of requests",
|
||||
"unit": "ms",
|
||||
"labels": ["method", "status"],
|
||||
# "buckets": [0.01, 0.05, 0.1, 0.5, 1, 5, 10, 50, 100, 500, 1000]
|
||||
})
|
||||
Reference in New Issue
Block a user