Építs egy ügynököt
Az SDK a Voice Agent Editor Node- és élmodelljét tükrözi. Létrehozol egy Workflow-t, Node-okat adsz hozzá (startCall, agentNode, endCall, …) az add() metódussal, összekapcsolod őket az edge() metódussal, majd a save_workflow használatával mented az eredményt.
Előfeltételek
- Egy IntraCord API kulcs
IntraCord_API_KEYnéven exportálva - Meglévő ügynökazonosító a piszkozatok mentéséhez (hozzon létre egyet az IntraCord felhasználói felületén vagy a
POST /api/v1/workflow/createkeresztül)
Építs és ments meg
Az alábbi példa egy három Node-ból álló hitelminősítő ügynököt épít fel, és új vázlatos verzióként menti el egy meglévő ügynökön. A közzétett ügynöke mindaddig kiszolgálja a hívásokat, amíg kifejezetten nem teszi közzé a piszkozatot.
from IntraCord_sdk import IntraCordClient, Workflow
with IntraCordClient(api_key="YOUR_API_KEY") as client:
wf = Workflow(client=client, name="loan_qualification")
greeting = wf.add(
type="startCall",
name="greeting",
prompt="You are Sarah from Acme Loans. Greet the caller warmly.",
)
qualify = wf.add(
type="agentNode",
name="qualify",
prompt="Ask about loan amount, purpose, and monthly income.",
)
done = wf.add(
type="endCall",
name="done",
prompt="Thank them and end the call politely.",
)
wf.edge(greeting, qualify, label="interested", condition="Caller wants to continue.")
wf.edge(qualify, done, label="done", condition="All qualification questions answered.")
client.save_workflow(workflow_id=123, workflow=wf)
import { IntraCordClient, Workflow } from "@IntraCord/sdk";
const client = new IntraCordClient({ apiKey: "YOUR_API_KEY" });
const wf = new Workflow({ client, name: "loan_qualification" });
const greeting = await wf.add({
type: "startCall",
name: "greeting",
prompt: "You are Sarah from Acme Loans. Greet the caller warmly.",
});
const qualify = await wf.add({
type: "agentNode",
name: "qualify",
prompt: "Ask about loan amount, purpose, and monthly income.",
});
const done = await wf.add({
type: "endCall",
name: "done",
prompt: "Thank them and end the call politely.",
});
wf.edge(greeting, qualify, { label: "interested", condition: "Caller wants to continue." });
wf.edge(qualify, done, { label: "done", condition: "All qualification questions answered." });
await client.saveWorkflow(123, wf);
Meglévő ügynök szerkesztése
Töltsön be egy ügynököt egy szerkeszthető Workflow-be, mutassa meg, majd mentse:
wf = client.load_workflow(workflow_id=123)
wf.name = "loan_qualification_v2"
client.save_workflow(workflow_id=123, workflow=wf)
const wf = await client.loadWorkflow(123);
wf.name = "loan_qualification_v2";
await client.saveWorkflow(123, wf);
Fedezze fel a Node-típusokat
Minden Node type Stringa és kötelező mezői a háttérrendszer Node-specifikációs katalógusából származnak. Töltse le futás közben, hogy ellenőrizhesse, mit tud építeni:
types = client.list_node_types()
for spec in types.node_types:
print(spec.name, [p.name for p in spec.properties])
const types = await client.listNodeTypes();
for (const spec of types.node_types) {
console.log(spec.name, spec.properties.map(p => p.name));
}