Ga naar inhoud

Bouw als partner één oplossing die je bij meerdere klantorganisaties kunt gebruiken

Aan het eind van deze tutorial staat de supportassistent die je één keer hebt gebouwd als publicatie in je eigen organisatie, en is hij bij Noordwind geïnstalleerd met de bedrijfsnaam, het model en het ticketsysteem van Noordwind. Je hebt een nieuwe versie uitgerold en weet wat er gebeurt als een klant een onderdeel losmaakt.

Bouwstenen Delen en hergebruik: publicatie, versie, abonnement, kopie. Organisaties en klanten, Agents
Je hebt nodig een account waarmee je je eigen organisatie beheert in de console; in je eigen organisatie de agent support en de toolset support, en een sleutel met agents voor stap 2; een klantorganisatie onder de jouwe (Noordwind), met daarin een API-koppeling naar haar ticketsysteem en de host daarvan toegestaan (stap 5); voor de controle de secret van de sleutel Supportportaal van Noordwind en een sleutel van je eigen organisatie met management
Bouwt voort op Bouw een agent die knowledge én tools combineert voor de agent en de toolset, en Richt een nieuwe klantorganisatie in voor Noordwind. Met alleen de agent uit de eerste tutorial kun je de tutorial ook volgen: laat dan tools weg uit de body van stap 2 en sla de regels over de toolset over. Een agent die een toolset noemt die niet bestaat, antwoordt 404

Deze tutorial gebruikt de console. Het formulier voor een versie laat je per onderdeel kiezen wat een installeerder invult, en Controleren toont vooraf wat een installatie betekent. Dezelfde handelingen bestaan als routes (Publiceren en installeren via de API).

1. Bepaal wat in de bundel gaat

Een publicatie zet kopieën in de organisatie van de klant. Bepaal daarom eerst per onderdeel of het voor elke klant gelijk is.

Onderdeel Voor elke klant gelijk? Keuze
de agent support ja, op de bedrijfsnaam en het model na in de bundel; naam en model vult de installeerder in
de toolset support ja in de bundel
de API-koppeling naar het ticketsysteem nee, elke klant heeft een eigen systeem niet in de bundel; de installeerder kiest zijn eigen koppeling
het handboek nee, elke klant heeft een eigen handboek niet in de bundel; de klant maakt een eigen zoektool handboek

Het handboek blijft erbuiten om een reden die je moet kennen. Zet je een collectie in een bundel, dan vult Core de kopie bij de klant met de documenten uit jouw collectie. Zolang de kopie gekoppeld is, kan de klant er zelf niets in zetten; dat kan pas nadat hij de collectie heeft losgemaakt, en dan volgt ze jouw documenten niet meer. Dat past bij documentatie die voor al je klanten hetzelfde is, zoals de handleiding van je eigen product, en niet bij het handboek van één klant.

Wat niet in een publicatie kan: een kennisgraaf, een datastore, geheugen, een planning, een sleutel en de policy van een organisatie. Een bundel kan wel een sleutelbeleid aanbevelen; Core past dat nooit zelf toe.

2. Maak de agent onafhankelijk van één klant

De instructie van de agent noemt Noordwind. Vervang de naam door een invulwaarde. Dit is een nieuwe versie van de agent in je eigen organisatie:

curl -s -X POST "$CORE_URL/agents/$AGENT_ID/versions" \
    -H "Authorization: Bearer $CORE_KEY" -H "Content-Type: application/json" \
    -d '{"model": "<een model-id>",
         "instructions": "Je bent de supportassistent van {{ $bedrijf }}. Antwoord kort en in het Nederlands.\n\n1. Zoek bij elke vraag eerst in het handboek en verwijs naar de passage met [n].\n2. Lost het handboek de vraag op, maak dan geen ticket.\n3. Lost het handboek de vraag niet op, of vraagt de klant om een ticket, maak er dan één aan.\n4. Noem het ticketnummer en zeg wat de klant kan verwachten.",
         "install_values": {"bedrijf": "ons bedrijf"},
         "temperature": 0.2,
         "max_tool_rounds": 4,
         "tools": [{"type": "toolset", "name": "support"}]}'

{{ $bedrijf }} is een invulwaarde: tekst die bij de organisatie hoort en die Core invult voordat de instructie naar het model gaat. Je eigen waarde, hier ons bedrijf, wordt de standaardwaarde voor elke installeerder. Kies daarom iets neutraals: een klant die het veld leeg laat, krijgt jouw waarde.

In de console staat hetzelfde veld als Invulwaarden onder de instructies van een agent (Tekst die de installeerder invult).

3. Maak de publicatie

  1. Open in je eigen organisatie Publicaties en kies Nieuwe publicatie.
  2. Vul bij Naam support-assistent in en schrijf een omschrijving. Abonnees zien beide.
  3. Kies bij Wie mag dit zien Onderliggende organisaties.
  4. Zet Automatisch installeren bij nieuwe organisaties aan.
  5. Kies Publicatie maken.

Onderliggende organisaties maakt de bundel zichtbaar voor elke organisatie onder de jouwe en voor niemand anders. Met automatisch installeren abonneert elke organisatie die je hierna aanmaakt zich meteen. De publicatie deelt nog niets: dat doet pas een versie.

4. Publiceer een versie

Kies Nieuwe versie publiceren en loop het formulier af:

  1. Wat gaat er mee. Klap Agents open en vink support aan. Klap Toolsets open en vink support aan.
  2. Laat installeerder kiezen. Zet onder de agent het veld model aan. Zet onder de toolset Laat installeerder een API-koppeling kiezen aan bij api__ticket_aanmaken.
  3. Parameters. Er staan nu drie parameters: bedrijf (met de markering Uit je eigen invulwaarden), een voor het model en een van het type API-koppeling. Geef de laatste de naam ticketsysteem, zet Verplicht aan en schrijf bij Uitleg bij het installeren wat je verwacht, bijvoorbeeld "De API-koppeling die een ticket aanmaakt in jullie ticketsysteem".
  4. Voorwaarden. Laat Losmaken en aanpassen aan.
  5. Wat er is veranderd. Schrijf "Eerste versie".
  6. Kies Versie publiceren.

Waarom deze keuzes:

  • Het model als parameter laat een klant een model kiezen dat in zijn organisatie beschikbaar is. Jouw huidige model is de standaardwaarde.
  • De API-koppeling als parameter zorgt dat de toolset bij elke klant naar diens eigen ticketsysteem wijst. De koppeling zelf, met het adres en het token, verlaat jouw organisatie niet.
  • Het patroon knowledge__handboek in de toolset gaat ongewijzigd mee. Het past bij de klant op zijn eigen zoektool met die naam, zodra die bestaat. Een patroon dat op niets past, biedt niets aan en geeft geen fout.
  • Losmaken toestaan geeft een klant de mogelijkheid om een onderdeel over te nemen en zelf aan te passen. Zet je het uit, dan blijft elke kopie gelijk aan jouw versie.

5. Installeer bij Noordwind

Noordwind bestond al voordat je de publicatie maakte, dus automatisch installeren gold voor haar niet. Je installeert met de hand.

  1. Open Noordwind vanuit Organisaties.
  2. Heeft Noordwind nog geen API-koppeling naar haar ticketsysteem, voeg die dan eerst toe onder API-koppelingen en sta de host toe, zoals in Laat een agent een actie uitvoeren met een tool.
  3. Open Geïnstalleerd, ga naar Beschikbaar en klik support-assistent aan.
  4. Vul onder Wat jij invult in: bij bedrijf Noordwind, bij het model een model van Noordwind, en bij ticketsysteem de koppeling uit stap 2.
  5. Kies Controleren. Het rapport noemt de functies die de bundel nodig heeft en die niet aanstaan, namen die al bezet zijn en per sleutel wat haar policy zou weigeren.
  6. Vink Ik ga akkoord met de voorwaarden van deze publicatie. aan en kies Installeren.

Het abonnement staat eerst op Wordt geïnstalleerd en daarna op Gekoppeld. Alleen een ontbrekende capability blokkeert een installatie; de rest van het rapport is advies.

6. Bekijk wat Noordwind heeft gekregen

Open in Noordwind Agents. De agent support staat er, met Gedeeld via support-assistent erbij. Onder Toolsets staat de toolset support op dezelfde manier.

  • Het zijn kopieën, en ze zijn van Noordwind: ze vallen onder de policy van haar sleutels en hun verbruik wordt op Noordwind geboekt.
  • De instructie in de kopie bevat Noordwind letterlijk op de plek van {{ $bedrijf }}.
  • Zolang een kopie gekoppeld is, kan Noordwind hem niet wijzigen. Zo weet je dat elke klant draait wat jij hebt gepubliceerd.

De agent zoekt pas in een handboek als Noordwind een zoektool met de identifier handboek heeft. Die maakt de klant, of jij voor de klant, met een sleutel van Noordwind zoals in Geef een agent kennis uit eigen bedrijfsinformatie. De toolset neemt hem daarna vanzelf op.

Controleer of het werkt

Roep de agent aan met de sleutel van Noordwind uit de vorige tutorial:

curl -s -X POST "$CORE_URL/responses" \
    -H "Authorization: Bearer <de secret van Supportportaal>" -H "Content-Type: application/json" \
    -d '{"agent": {"id": "support"}, "input": "Voor welk bedrijf werk je?"}'

Het antwoord noemt Noordwind. Dezelfde aanroep gaf aan het eind van de vorige tutorial nog 404.

Met een sleutel van je eigen organisatie die management heeft, lees je de stand van de installatie zonder de console:

curl -s "$CORE_URL/organisations/ten_9Fb2.../subscriptions" -H "Authorization: Bearer $CORE_KEY"
{
  "items": [
    { "id": "sub_1Ac7...", "publication_name": "support-assistent", "status": "linked",
      "installed_version": 1, "follow": "latest",
      "config": { "bedrijf": "Noordwind", "ticketsysteem": "tool_8Yp3..." } }
  ]
}

Het antwoord is ingekort; config bevat ook het gekozen model.

7. Rol een verbetering uit

Je wilt dat de agent bij elk ticket het bestelnummer vraagt. Maak in je eigen organisatie een nieuwe versie van de agent, zoals in stap 2, met die zin in de instructie. Kies daarna op de publicatie opnieuw Nieuwe versie publiceren, met dezelfde onderdelen en keuzes, en schrijf onder Wat er is veranderd wat een klant moet weten.

Elk abonnement dat de laatste versie volgt, krijgt de nieuwe versie vanzelf: Core synchroniseert de kopieën. Bij Noordwind staat installed_version daarna op 2. Een nieuwe versie van de agent in je eigen organisatie bereikt een klant dus pas als je een versie van de publicatie uitbrengt. Dat geeft je de ruimte om eerst zelf te testen.

Een klant die niet elke versie wil volgen, kiest bij het installeren onder Geavanceerd bij Nieuwe versies voor de versie die hij installeert. Komt een abonnement op Vastgelopen, dan staat de reden op de pagina van het abonnement; na het herstellen kies je Opnieuw synchroniseren.

8. Laat een klant een onderdeel losmaken

Noordwind wil een eigen toon in de instructie. Open het abonnement onder Geïnstalleerd en kies Losmaken bij de agent support.

Na het losmaken is de agent van Noordwind: haar beheerders kunnen hem wijzigen, en hij volgt geen nieuwe versies meer. Het abonnement staat op Deels losgemaakt; de toolset blijft gekoppeld en volgt wel. Losmaken is niet terug te draaien. Spreek daarom met een klant af wie de agent daarna onderhoudt, want jouw verbeteringen bereiken hem niet meer.

Een volgende klant

Maak een nieuwe organisatie aan zoals in de vorige tutorial. De publicatie wordt daar automatisch geïnstalleerd, en het abonnement staat op Instellen nodig: de parameter ticketsysteem is verplicht en heeft geen standaardwaarde. Voeg de API-koppeling van die klant toe, open het abonnement, vul onder Instellingen de koppeling, de bedrijfsnaam en het model in en kies Instellingen opslaan. Daarna wordt de bundel geïnstalleerd.

Als het niet werkt

Je ziet Oorzaak Oplossing
de publicatie staat niet onder Beschikbaar er is nog geen versie, of de organisatie hangt niet onder de jouwe publiceer een versie; controleer de boom op Organisaties
Core weigert de versie een parameter die een onderdeel gebruikt, is niet verplicht en heeft geen standaardwaarde zet Verplicht aan of vul een Standaardwaarde in
Controleren meldt een functie die niet aanstaat de bundel gebruikt een capability die buiten het plafond van de klant valt zet de capability aan in Toegestane capabilities van de klant, en in elke organisatie erboven
het abonnement staat op Instellen nodig een verplichte waarde ontbreekt vul hem in onder Instellingen en kies Instellingen opslaan
het abonnement staat op Vastgelopen de laatste synchronisatie is mislukt, bijvoorbeeld omdat de gekozen koppeling is verwijderd lees de reden, herstel de oorzaak en kies Opnieuw synchroniseren
de agent noemt ons bedrijf de installeerder liet bedrijf leeg, dus geldt jouw standaardwaarde vul de naam in onder Instellingen van het abonnement
404 als de sleutel van de klant de agent aanroept de policy van die sleutel staat de naam van de agent niet toe, bijvoorbeeld door een voorvoegsel bij het installeren pas de regel over Agents aan, of installeer zonder voorvoegsel

Verder

Dit is de laatste tutorial. Het model van Core laat zien hoe de bouwstenen die je hebt gebruikt samenhangen.