Routing
What’s a Router?
Installation
# you can use a Conda environment
pip install --extra-index-url https://oauth2accesstoken:$(gcloud auth print-access-token)@glsdk.gdplabs.id/gen-ai-internal/simple/ "gllm-misc"# you can use a Conda environment
$token = (gcloud auth print-access-token)
pip install --extra-index-url "https://oauth2accesstoken:$token@glsdk.gdplabs.id/gen-ai-internal/simple/" "gllm-misc"# you can use a Conda environment
FOR /F "tokens=*" %T IN ('gcloud auth print-access-token') DO pip install --extra-index-url "https://oauth2accesstoken:%T@glsdk.gdplabs.id/gen-ai-internal/simple/" "gllm-misc"Quickstart
1
import asyncio
from gllm_misc.router.aurelio_semantic_router.aurelio_semantic_router import AurelioSemanticRouter
from semantic_router.encoders import OpenAIEncoder
valid_routes = {"faq", "billing", "tech_support", "fallback"}
default_route = "fallback" # must be in valid_routes
routes = {
"faq": [
"What are your business hours?",
"Where can I find the user guide?",
"How do I reset my password?",
],
"billing": [
"How do I update my payment method?",
"Invoice not received",
"Why was I charged twice?",
],
"tech_support": [
"App crashes on launch",
"Connection timeout when uploading",
"Error code 504 when syncing files",
],
# "fallback" doesn't need samples; it's used when nothing matches
}2
openai_api_key = "<YOUR_OPENAI_API_KEY>"
encoder = OpenAIEncoder("text-embedding-3-small", openai_api_key=openai_api_key)3
router = AurelioSemanticRouter(
default_route=default_route,
valid_routes=valid_routes,
encoder=encoder,
routes=routes,
)4
user_input = "My credit card expired and billing failed."
route = asyncio.run(router.route(user_input))
print(f"Selected route: {route}") # e.g., "billing"Use Route Filtering
Use an EM invoker as Encoder
Last updated
Was this helpful?