Dokumentasikan pengetahuan kelembagaan dari input suara dengan menggunakan Amazon Bedrock dan Amazon Transcribe - AWS Prescriptive Guidance

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Dokumentasikan pengetahuan kelembagaan dari input suara dengan menggunakan Amazon Bedrock dan Amazon Transcribe

Praveen Kumar Jeyarajan, Jundong Qiao, Rajiv Upadhyay, dan Megan Wu, Amazon Web Services

Ringkasan

Menangkap pengetahuan kelembagaan sangat penting untuk memastikan keberhasilan dan ketahanan organisasi. Pengetahuan kelembagaan mewakili kebijaksanaan kolektif, wawasan, dan pengalaman yang dikumpulkan oleh karyawan dari waktu ke waktu, seringkali bersifat diam-diam dan diturunkan secara informal. Kekayaan informasi ini mencakup pendekatan unik, praktik terbaik, dan solusi untuk masalah rumit yang mungkin tidak didokumentasikan di tempat lain. Dengan memformalkan dan mendokumentasikan pengetahuan ini, perusahaan dapat melestarikan memori kelembagaan, mendorong inovasi, meningkatkan proses pengambilan keputusan, dan mempercepat kurva pembelajaran bagi karyawan baru. Selain itu, mempromosikan kolaborasi, memberdayakan individu, dan menumbuhkan budaya perbaikan berkelanjutan. Pada akhirnya, memanfaatkan pengetahuan institusional membantu perusahaan menggunakan aset mereka yang paling berharga — kecerdasan kolektif tenaga kerja mereka — untuk menavigasi tantangan, mendorong pertumbuhan, dan mempertahankan keunggulan kompetitif dalam lingkungan bisnis yang dinamis.

Pola ini menjelaskan cara menangkap pengetahuan kelembagaan melalui rekaman suara dari karyawan senior. Ini menggunakan Amazon Transcribe dan Amazon Bedrock untuk dokumentasi dan verifikasi sistematis. Dengan mendokumentasikan pengetahuan informal ini, Anda dapat melestarikannya dan membagikannya dengan kelompok karyawan berikutnya. Upaya ini mendukung keunggulan operasional dan meningkatkan efektivitas program pelatihan melalui penggabungan pengetahuan praktis yang diperoleh melalui pengalaman langsung.

Prasyarat dan batasan

Prasyarat

Batasan

  • Solusi ini diterapkan ke satu akun AWS.

  • Solusi ini hanya dapat diterapkan di Wilayah AWS di mana Amazon Bedrock dan Amazon Transcribe tersedia. Untuk informasi tentang ketersediaan, lihat dokumentasi untuk Amazon Bedrock dan Amazon Transcribe.

  • File audio harus dalam format yang didukung Amazon Transcribe. Untuk daftar format yang didukung, lihat Format media dalam dokumentasi Transcribe.

Versi produk

  • AWS SDK untuk Python (Boto3) versi 1.34.57 atau yang lebih baru

  • LangChain versi 0.1.12 atau yang lebih baru

Arsitektur

Arsitektur mewakili alur kerja tanpa server di AWS. AWS Step Functions mengatur fungsi Lambda untuk pemrosesan audio, analisis teks, dan pembuatan dokumen. Diagram berikut menunjukkan alur kerja Step Functions, juga dikenal sebagai mesin negara.

Diagram arsitektur mesin status Step Functions yang menghasilkan dokumen

Setiap langkah dalam mesin negara ditangani oleh fungsi Lambda yang berbeda. Berikut ini adalah langkah-langkah dalam proses pembuatan dokumen:

  1. Fungsi preprocess Lambda memvalidasi input yang diteruskan ke Step Functions dan mencantumkan semua file audio yang ada di path folder Amazon S3 URI yang disediakan. Fungsi Lambda hilir dalam alur kerja menggunakan daftar file untuk memvalidasi, meringkas, dan menghasilkan dokumen.

  2. Fungsi transcribe Lambda menggunakan Amazon Transcribe untuk mengonversi file audio menjadi transkrip teks. Fungsi Lambda ini bertanggung jawab untuk memulai proses transkripsi dan secara akurat mengubah ucapan menjadi teks, yang kemudian disimpan untuk pemrosesan selanjutnya.

  3. Fungsi validate Lambda menganalisis transkrip teks, menentukan relevansi tanggapan terhadap pertanyaan awal. Dengan menggunakan model bahasa besar (LLM) melalui Amazon Bedrock, ini mengidentifikasi dan memisahkan jawaban berdasarkan topik dari tanggapan di luar topik.

  4. Fungsi summarize Lambda menggunakan Amazon Bedrock untuk menghasilkan ringkasan jawaban pada topik yang koheren dan ringkas.

  5. Fungsi generate Lambda merakit ringkasan menjadi dokumen yang terstruktur dengan baik. Ini dapat memformat dokumen sesuai dengan templat yang telah ditentukan dan menyertakan konten atau data tambahan yang diperlukan.

  6. Jika salah satu fungsi Lambda gagal, Anda menerima pemberitahuan email melalui Amazon Simple Notification Service (Amazon SNS).

Sepanjang proses ini, AWS Step Functions memastikan bahwa setiap fungsi Lambda dimulai dalam urutan yang benar. Mesin state ini memiliki kapasitas untuk pemrosesan paralel untuk meningkatkan efisiensi. Bucket Amazon S3 bertindak sebagai repositori penyimpanan pusat, mendukung alur kerja dengan mengelola berbagai format media dan dokumen yang terlibat.

Alat

Layanan AWS

  • Amazon Bedrock adalah layanan yang dikelola sepenuhnya yang membuat model foundation berkinerja tinggi (FMs) dari startup AI terkemuka dan Amazon tersedia untuk Anda gunakan melalui API terpadu.

  • AWS Lambda adalah layanan komputasi yang membantu Anda menjalankan kode tanpa perlu menyediakan atau mengelola server. Ini menjalankan kode Anda hanya bila diperlukan dan skala secara otomatis, jadi Anda hanya membayar untuk waktu komputasi yang Anda gunakan.

  • Amazon Simple Notification Service (Amazon SNS) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.

  • Amazon Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.

  • AWS Step Functions adalah layanan orkestrasi tanpa server yang membantu Anda menggabungkan fungsi AWS Lambda dan layanan AWS lainnya untuk membangun aplikasi yang penting bagi bisnis.  

  • Amazon Transcribe adalah layanan pengenalan suara otomatis yang menggunakan model pembelajaran mesin untuk mengonversi audio menjadi teks.

Alat-alat lainnya

  • LangChainadalah kerangka kerja untuk mengembangkan aplikasi yang didukung oleh model bahasa besar (LLMs).

Repositori kode

Kode untuk pola ini tersedia di GitHub genai-knowledge-capturerepositori.

Repositori kode berisi file dan folder berikut:

  • assetsfolder — Aset statis untuk solusi, seperti diagram arsitektur dan dataset publik

  • code/lambdasfolder - Kode Python untuk semua fungsi Lambda

    • code/lambdas/generatefolder - Kode Python yang menghasilkan dokumen dari data yang diringkas dalam ember S3

    • code/lambdas/preprocessfolder - Kode Python yang memproses input untuk mesin status Step Functions

    • code/lambdas/summarizefolder - Kode Python yang merangkum data yang ditranskripsikan dengan menggunakan layanan Amazon Bedrock

    • code/lambdas/transcribefolder - Kode Python yang mengubah data ucapan (file audio) menjadi teks dengan menggunakan Amazon Transcribe

    • code/lambdas/validatefolder - Kode Python yang memvalidasi apakah semua jawaban berkaitan dengan topik yang sama

  • code/code_stack.py— AWS CDK membangun file Python yang digunakan untuk membuat sumber daya AWS

  • app.py— File Python aplikasi AWS CDK yang digunakan untuk menyebarkan sumber daya AWS di akun AWS target

  • requirements.txt— Daftar semua dependensi Python yang harus diinstal untuk AWS CDK

  • cdk.json— File input untuk memberikan nilai yang diperlukan untuk membuat sumber daya

Praktik terbaik

Contoh kode yang diberikan adalah untuk proof-of-concept (PoC) atau tujuan percontohan saja. Jika Anda ingin mengambil solusi untuk produksi, gunakan praktik terbaik berikut:

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Ekspor variabel untuk akun dan Wilayah AWS.

Untuk memberikan kredensi AWS untuk AWS CDK dengan menggunakan variabel lingkungan, jalankan perintah berikut.

export CDK_DEFAULT_ACCOUNT=<12-digit AWS account number> export CDK_DEFAULT_REGION=<Region>
AWS DevOps, DevOps insinyur

Siapkan profil bernama AWS CLI.

Untuk mengatur profil bernama AWS CLI untuk akun, ikuti petunjuk dalam pengaturan Konfigurasi dan file kredensyal.

AWS DevOps, DevOps insinyur
TugasDeskripsiKeterampilan yang dibutuhkan

Kloning repo ke workstation lokal Anda.

Untuk mengkloning genai-knowledge-capturerepositori, jalankan perintah berikut di terminal Anda.

git clone https://github.com/aws-samples/genai-knowledge-capture
AWS DevOps, DevOps insinyur

(Opsional) Ganti file audio.

Untuk menyesuaikan aplikasi sampel untuk memasukkan data Anda sendiri, lakukan hal berikut:

  1. Arahkan ke assets/audio_samples folder di repositori kloning.

  2. Hapus folder yang berisi file audio sampel.

  3. Buat folder untuk setiap topik yang ingin Anda analisis.

  4. Transfer file audio Anda ke folder masing-masing.

AWS DevOps, DevOps insinyur

Siapkan lingkungan virtual Python.

Untuk mengatur lingkungan virtual Python, jalankan perintah berikut.

cd genai-knowledge-capture python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt
AWS DevOps, DevOps insinyur

Sintesis kode AWS CDK.

Untuk mengonversi kode ke konfigurasi AWS CloudFormation stack, jalankan perintah berikut.

cdk synth
AWS DevOps, DevOps insinyur
TugasDeskripsiKeterampilan yang dibutuhkan

Penyediaan akses model pondasi.

Aktifkan akses ke model Anthropic Claude 3 Sonnet untuk akun AWS Anda. Untuk petunjuk, lihat Menambahkan akses model dalam dokumentasi Bedrock.

AWS DevOps

Menyebarkan sumber daya di akun.

Untuk menerapkan sumber daya di akun AWS dengan menggunakan AWS CDK, lakukan hal berikut:

  1. (Opsional) Di root repositori kloning, dalam app.py file, perbarui nama tumpukan CloudFormation AWS. Nama stack default adalahgenai-knowledge-capture-stack.

  2. Untuk menyebarkan sumber daya, jalankan perintahcdk deploy.

    cdk deployPerintah ini menggunakan konstruksi layer-3 untuk membuat satu set fungsi Lambda, bucket S3, topik Amazon SNS, dan mesin status Step Functions. File audio dalam assets/audio_samples folder disalin ke bucket S3 selama penerapan.

  3. Masuk ke AWS Management Console, lalu buka CloudFormation konsol di https://console.aws.amazon.com/cloudformation/.

  4. Konfirmasikan bahwa tumpukan berhasil digunakan. Untuk petunjuknya, lihat Meninjau tumpukan Anda di CloudFormation konsol AWS.

AWS DevOps, DevOps insinyur

Langganan topik Amazon SNS.

Untuk berlangganan topik Amazon SNS untuk pemberitahuan, lakukan hal berikut:

  1. Di CloudFormation konsol, di panel navigasi, pilih Tumpukan.

  2. Pilih genai-knowledge-capture-stack tumpukan.

  3. Pilih tab Output.

  4. Temukan nama topik Amazon SNS dengan kuncinya. SNSTopicName

  5. Konfigurasikan alamat email untuk menerima pemberitahuan dengan mengikuti petunjuk di Berlangganan alamat email ke topik Amazon SNS.

AWS Umum
TugasDeskripsiKeterampilan yang dibutuhkan

Jalankan mesin negara.

  1. Buka Konsol Step Functions.

  2. Pada halaman mesin Negara, pilih genai-knowledge-capture-stack-state-machine.

  3. Pilih Mulai Eksekusi.

  4. (Opsional) Di Nama kotak, masukkan nama untuk eksekusi.

  5. Di area Input, masukkan objek JSON berikut dengan mengganti teks placeholder, di mana:

    • <Name>adalah apa yang ingin Anda beri nama dokumen.

    • <S3 bucket name>adalah nama bucket Amazon S3 yang berisi file audio.

    • <Folder path>adalah direktori yang berisi file audio.

    {   "documentName": "<Name>",   "audioFileFolderUri": "s3://<S3 bucket name>/<Folder path>" }
  6. Pilih Mulai Eksekusi.

  7. Pada halaman detail eksekusi, tinjau hasilnya dan tunggu eksekusi selesai.

Pengembang aplikasi, AWS Umum
TugasDeskripsiKeterampilan yang dibutuhkan

Hapus sumber daya AWS.

Setelah Anda menguji solusinya, bersihkan sumber daya:

  1. Hapus semua objek dari bucket S3, lalu hapus bucket. Untuk informasi selengkapnya, lihat Menghapus bucket.

  2. Dari repositori kloning, jalankan perintah. cdk destroy

AWS DevOps, DevOps insinyur

Sumber daya terkait

Dokumentasi AWS

Sumber daya lainnya