mirror of
https://github.com/katanemo/plano.git
synced 2026-04-26 01:06:25 +02:00
* Fix llm_routing provider element We replaced provider with provider_interface to make it more clear to developers about provider api/backend being used. During that upgrade we removed support for mistral in provider to encourage developers to start using provider_interface. But this demo was not updated to use provider_interface as it was using mistral. This code change fixes it by replacing provider with provider_interface. Signed-off-by: Adil Hafeez <adil.hafeez@gmail.com> * fix the path * move * add more details * fix * Apply suggestions from code review * fix * fix --------- Signed-off-by: Adil Hafeez <adil.hafeez@gmail.com>
70 lines
2.4 KiB
YAML
70 lines
2.4 KiB
YAML
version: v0.1
|
|
|
|
listener:
|
|
address: 0.0.0.0 # or 127.0.0.1
|
|
port: 10000
|
|
# Defines how Arch should parse the content from application/json or text/pain Content-type in the http request
|
|
message_format: huggingface
|
|
|
|
# Centralized way to manage LLMs, manage keys, retry logic, failover and limits in a central way
|
|
llm_providers:
|
|
- name: OpenAI
|
|
provider_interface: openai
|
|
access_key: $OPENAI_API_KEY
|
|
model: gpt-4o
|
|
default: true
|
|
stream: true
|
|
|
|
# default system prompt used by all prompt targets
|
|
system_prompt: You are a network assistant that just offers facts; not advice on manufacturers or purchasing decisions.
|
|
|
|
prompt_guards:
|
|
input_guards:
|
|
jailbreak:
|
|
on_exception:
|
|
message: Looks like you're curious about my abilities, but I can only provide assistance within my programmed parameters.
|
|
|
|
prompt_targets:
|
|
- name: information_extraction
|
|
default: true
|
|
description: handel all scenarios that are question and answer in nature. Like summarization, information extraction, etc.
|
|
endpoint:
|
|
name: app_server
|
|
path: /agent/summary
|
|
http_method: POST
|
|
# Arch uses the default LLM and treats the response from the endpoint as the prompt to send to the LLM
|
|
auto_llm_dispatch_on_response: true
|
|
# override system prompt for this prompt target
|
|
system_prompt: You are a helpful information extraction assistant. Use the information that is provided to you.
|
|
|
|
- name: reboot_network_device
|
|
description: Perform device operations like rebooting a device.
|
|
endpoint:
|
|
name: app_server
|
|
path: /agent/action
|
|
http_method: POST
|
|
parameters:
|
|
- name: device_id
|
|
type: str
|
|
description: Identifier of the network device to reboot.
|
|
required: true
|
|
- name: confirmation
|
|
type: bool
|
|
description: Confirmation flag to proceed with reboot.
|
|
default: false
|
|
enum: [true, false]
|
|
|
|
error_target:
|
|
endpoint:
|
|
name: error_target_1
|
|
path: /error
|
|
|
|
# Arch creates a round-robin load balancing between different endpoints, managed via the cluster subsystem.
|
|
endpoints:
|
|
app_server:
|
|
# value could be ip address or a hostname with port
|
|
# this could also be a list of endpoints for load balancing
|
|
# for example endpoint: [ ip1:port, ip2:port ]
|
|
endpoint: 127.0.0.1:80
|
|
# max time to wait for a connection to be established
|
|
connect_timeout: 0.005s
|