Repo ini berisi demonstrasi IBM watsonx, AI IBM dan platform data yang dibuat untuk bisnis.
Contoh aplikasi AI dalam repo ini memanfaatkan komponen utama berikut:
Sebagai contoh skenario layanan pelanggan dari perusahaan telekomunikasi digunakan. Agen manusia berbicara dengan pelanggan untuk memecahkan masalah mereka. Agen manusia didukung oleh agen digital untuk mengotomatiskan sebanyak mungkin perbaikan yang diperlukan.
Berikut transkrip percakapan dengan pelanggan yang mengalami masalah router Wi-Fi:
John (Teltop Customer Care Agent): Hello, this is John from Teltop customer care. How
can I assist you today?
Mary (Disappointed Subscriber): Hi John, it's Mary again. I've been having a nightmare
with your service. My home Wi-Fi is acting up, and the TV service over fiber is
terrible.
John: I'm sorry to hear about the troubles you're facing at home, Mary. Let's address
these issues. Can you please provide me with your account number or the phone number
associated with your account?
Mary: Sure, it's 123-555-1234.
[...]
John: Mary, it appears there are some issues with your router. We need to update the
router software.
Dalam contoh ini, perangkat lunak router dapat diperbarui dari jarak jauh dan otomatis. Jika ini berhasil dilakukan, email akan dikirim ke pelanggan.
Transkripsi panggilan telepon dapat dilakukan melalui layanan Speech to Text. Aset mencakup tiga langkah berikut yang dijalankan secara berurutan. Untuk memperbarui router dan mengirim email, alat dipanggil.
Mari kita lihat langkah (2) lebih detail. Jika ringkasan transkrip berisi 'pembaruan router' sebagai tindakan perbaikan, agen memahami bahwa ia harus menggunakan alat dengan nomor telepon pelanggan sebagai masukan.
Agent UpdateRouterIfNecessary LLM Output:
{
generated_text: 'Question: Update the router for Mary (123-555-1234) based on the
transcript summary.n' +
'Thought: I need to update the router for Mary (123-555-1234) based on the
transcript summary, so I will use the RouterUpdate tool.n' +
'Tool Name: RouterUpdaten' +
'Tool Caption: Updating router software for Mary (123-555-1234)n' +
'Tool Input: {"phoneNumber":"123-555-1234"}n' +
'Tool Output: ',
generated_token_count: 4465,
input_token_count: 1271,
stop_reason: 'not_finished'
}
Agen telah diimplementasikan dengan Bee Agent Framework di TypeScript. Kerangka kerja ini dibuat oleh IBM Research dan tersedia sebagai sumber terbuka. Cuplikan berikut menunjukkan definisi alat router yang dimasukkan ke dalam prompt saat memanggil Model Bahasa Besar.
export class RouterUpdateTool extends Tool <
RouterUpdateToolOutput , RouterUpdateToolOptions , RouterUpdateToolRunOptions > {
name = "RouterUpdate" ;
description = "Updates the software of routers remotely for a subscriber " +
"with a certain phone number." ;
inputSchema ( ) {
return z . object ( {
phoneNumber : z
. string ( { description : `Phone number of a subscriber, for example '123-456-7890'` } )
. min ( 1 )
. max ( 40 ) ,
} ) ;
}
Daripada berhalusinasi tentang keluaran alat, agen menghentikan aliran dari LLM setelah 'Output Alat:' dan sebagai gantinya mengeksekusi alat tersebut.
Agent UpdateRouterIfNecessary (tool_input) ? : {"phoneNumber":"123-555-1234"}
Input to Router Update tool - phoneNumber: 123-555-1234
Agent UpdateRouterIfNecessary (tool_output) ? : {"success":"true",
"text":"Router has been updated"}
Ada tiga aliran berbeda yang menerapkan skenario yang sama.
Aplikasi agen dapat dijalankan sebagai aplikasi TypeScript yang berdiri sendiri, misalnya secara lokal untuk tujuan pengembangan. Selain itu, watsonx Orchestrate dapat digunakan untuk menjalankan tiga langkah dan menyampaikan konteks di antara langkah-langkah tersebut.
Ketika 'Sembunyikan formulir ini dari pengguna' dipilih, alur lengkap dijalankan, misalnya di klien obrolan Orchestrate atau melalui API.
Untuk meringkas transkrip, model LLama 3.1 70b yang lebih besar dapat digunakan di watsonx.ai. Untuk mencapai waktu respons yang lebih cepat dan menghemat biaya pengoperasian model, model yang lebih kecil dapat disesuaikan.
InstructLab adalah inisiatif sumber terbuka yang dipimpin oleh Red Hat dan IBM Research. Selain kemampuan untuk menyempurnakan model AI generatif, AI juga mendukung pembuatan data sintetis sehingga lebih sedikit data nyata yang diperlukan.
Misalnya, InstructLab dapat menghasilkan lebih banyak sampel transkripsi (konteks) berdasarkan beberapa sampel nyata yang ditentukan dalam file yaml.
version : 3
task_description : >-
Summarization of phone call transcripts between human agents
and clients of a telecommunication service provider about
technical issues.
created_by : nheidloff
seed_examples :
- context : >-
John (Teltop Customer Care Agent): Hello, this is John from Teltop customer
care. How can I assist you today?nnMary (Disappointed Subscriber): Hi
John, it'''s Mary. I'''ve been having a nightmare with your service.
My home Wi-Fi is acting up, and the TV service over fiber is terrible.
nnJohn: I'm sorry to hear about the troubles you're facing at home, Mary.
Let's address these issues. Can you please provide me with your account number
or the phone number associated with your account??nnMary: Sure, it'''s
123-555-1234. [...]
nnJohn: Mary, it appears there are some issues with your router. We need
to update the router software. [...]
question: >-
Summarize the transcript of the call. Identify the agent and the
subscriber. Add any specific issues mentioned by the subscriber. Add any
corrective actions taken as directed by the agent. Please mention if the
issue is resolved. Mention any follow-up actions and timelines. List the
phone number of the subscriber at the end.
answer: >-
**Agent:** Miken**Subscriber:** Saran [...]
**Corrective Actions:** Router software update [...]
**Subscriber's Phone Number:** 123-555-1234
Cuplikan berikut menunjukkan beberapa contoh keluaran. Demikian pula, InstructLab dapat menghasilkan dan mengevaluasi ringkasan (jawaban).
[Start of Context]
Raj (Customer Care Agent): Hello, this is Raj from customer care. How can I assist
you today?
Samantha (Customer): Hi Raj, I'm having trouble with my internet connection. It's
been really slow lately [cut ... cut]
[End of Context]
Model alas bedak khusus dan model dari HuggingFace dapat diimpor dan diterapkan di watsonx.ai.
Untuk mengevaluasi model dasar, watsonx.governance menyediakan mekanisme untuk memantau model dengan berbagai metrik siap pakai serta metrik khusus.
git clone https://github.com/IBM/watsonx-ai-platform-demos
cd watsonx-demos/applications/application
cp .env.template .env
# define WATSONX_API_KEY and WATSONX_PROJECT_ID
yarn install
yarn start:appOneLLMTwoAgents
Lihat dokumentasi aplikasi untuk informasi lebih lanjut.
Demonstrasi repo ini telah diterapkan oleh tim IBM DACH CSM bekerja sama dengan Tech Sales.