

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
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe"></a>

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

## Ringkasan
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-summary"></a>

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](https://docs.aws.amazon.com/transcribe/latest/dg/what-is.html) dan [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html) 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
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif
+ [Docker, diinstal](https://docs.docker.com/engine/install/)
+ AWS Cloud Development Kit (AWS CDK) versi 2.114.1 atau yang lebih baru, [diinstal](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_tools) dan [di-bootstrap ke](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_bootstrap) Wilayah AWS atau AWS `us-east-1` `us-west-2`
+ [AWS CDK Toolkit versi 2.114.1 atau yang lebih baru, diinstal](https://docs.aws.amazon.com/cdk/v2/guide/cli.html)
+ [AWS Command Line Interface (AWS CLI)[,](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) diinstal dan dikonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)
+ [Python versi 3.12 atau yang lebih baru, diinstal](https://www.python.org/downloads/)
+ Izin untuk membuat Amazon Transcribe, Amazon Bedrock, Amazon Simple Storage Service (Amazon S3), dan sumber daya AWS Lambda

**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](https://docs.aws.amazon.com/transcribe/latest/dg/what-is.html#tsc-regions)](https://docs.aws.amazon.com/bedrock/latest/userguide/bedrock-regions.html) Transcribe.
+ File audio harus dalam format yang didukung Amazon Transcribe. Untuk daftar format yang didukung, lihat [Format media](https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) 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
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-architecture"></a>

Arsitektur mewakili alur kerja tanpa server di AWS. [AWS Step Functions mengatur fungsi](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 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](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/f1e0106d-b046-4adc-9718-c299efb7b436/images/e90298ca-1b7f-4c3e-97bd-311a9d5a4997.png)


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.

1. 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 diproses selanjutnya.

1. 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.

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

1. 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.

1. 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
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-tools"></a>

**Layanan AWS**
+ [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html) 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](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 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](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.
+ [Amazon Simple Storage Service (Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 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](https://docs.aws.amazon.com/transcribe/latest/dg/what-is.html) adalah layanan pengenalan suara otomatis yang menggunakan model pembelajaran mesin untuk mengonversi audio menjadi teks.

**Alat lainnya**
+ [LangChain](https://python.langchain.com/docs/get_started/introduction/)adalah kerangka kerja untuk mengembangkan aplikasi yang didukung oleh model bahasa besar (LLMs).

**Repositori kode**

Kode untuk pola ini tersedia di GitHub [genai-knowledge-capture](https://github.com/aws-samples/genai-knowledge-capture)repositori.

Repositori kode berisi file dan folder berikut:
+ `assets`folder — Aset statis untuk solusi, seperti diagram arsitektur dan dataset publik
+ `code/lambdas`folder - Kode Python untuk semua fungsi Lambda
  + `code/lambdas/generate`folder - Kode Python yang menghasilkan dokumen dari data yang diringkas dalam ember S3
  + `code/lambdas/preprocess`folder - Kode Python yang memproses input untuk mesin status Step Functions
  + `code/lambdas/summarize`folder - Kode Python yang merangkum data yang ditranskripsikan dengan menggunakan layanan Amazon Bedrock
  + `code/lambdas/transcribe`folder - Kode Python yang mengubah data ucapan (file audio) menjadi teks dengan menggunakan Amazon Transcribe
  + `code/lambdas/validate`folder - 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
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-best-practices"></a>

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:
+ Aktifkan [pencatatan akses Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html)
+ Aktifkan [Log Aliran VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html)

## Epik
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-epics"></a>

### Menyiapkan kredensi AWS di workstation lokal Anda
<a name="set-up-aws-credentials-on-your-local-workstation"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Ekspor variabel untuk akun dan Wilayah AWS. | Untuk memberikan kredensi AWS untuk AWS CDK dengan menggunakan variabel lingkungan, jalankan perintah berikut.<pre>export CDK_DEFAULT_ACCOUNT=<12-digit AWS account number><br />export CDK_DEFAULT_REGION=<Region></pre> | 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](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html). | AWS DevOps, DevOps insinyur | 

### Siapkan lingkungan Anda
<a name="set-up-your-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repo ke workstation lokal Anda. | Untuk mengkloning [genai-knowledge-capture](https://github.com/aws-samples/genai-knowledge-capture)repositori, jalankan perintah berikut di terminal Anda.<pre>git clone https://github.com/aws-samples/genai-knowledge-capture</pre> | AWS DevOps, DevOps insinyur | 
| (Opsional) Ganti file audio. | Untuk menyesuaikan aplikasi sampel untuk memasukkan data Anda sendiri, lakukan hal berikut:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe.html) | AWS DevOps, DevOps insinyur | 
| Siapkan lingkungan virtual Python. | Untuk mengatur lingkungan virtual Python, jalankan perintah berikut.<pre>cd genai-knowledge-capture<br />python3 -m venv .venv<br />source .venv/bin/activate<br />pip install -r requirements.txt</pre> | AWS DevOps, DevOps insinyur | 
| Sintesis kode AWS CDK. | Untuk mengonversi kode ke konfigurasi AWS CloudFormation stack, jalankan perintah berikut.<pre>cdk synth</pre> | AWS DevOps, DevOps insinyur | 

### Konfigurasikan dan terapkan solusinya
<a name="configure-and-deploy-the-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Penyediaan akses model pondasi. | Aktifkan akses ke model Anthropic Claude 3 Sonnet untuk akun AWS Anda. Untuk petunjuk, lihat [Menambahkan akses model](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html#model-access-add) dalam dokumentasi Bedrock. | AWS DevOps | 
| Menyebarkan sumber daya di akun. | Untuk menerapkan sumber daya di akun AWS dengan menggunakan AWS CDK, lakukan hal berikut:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe.html) | AWS DevOps, DevOps insinyur | 
| Langganan topik Amazon SNS. | Untuk berlangganan topik Amazon SNS untuk pemberitahuan, lakukan hal berikut:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe.html) | AWS Umum | 

### Pengujian solusi
<a name="test-the-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Jalankan mesin negara. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe.html) | Pengembang aplikasi, AWS Umum | 

### Bersihkan semua sumber daya AWS dalam solusi
<a name="clean-up-all-aws-resources-in-the-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus sumber daya AWS. | Setelah Anda menguji solusinya, bersihkan sumber daya:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe.html) | AWS DevOps, DevOps insinyur | 

## Sumber daya terkait
<a name="document-institutional-knowledge-from-voice-inputs-by-using-amazon-bedrock-and-amazon-transcribe-resources"></a>

**Dokumentasi AWS**
+ Sumber daya Amazon Bedrock:
  + [Akses model](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html)
  + [Parameter inferensi untuk model pondasi](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html)
+ Sumber daya AWS CDK:
  + [Memulai AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html)
  + [Bekerja dengan AWS CDK dengan Python](https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-python.html)
  + [Memecahkan masalah umum AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/troubleshooting.html)
  + [Perintah Toolkit](https://docs.aws.amazon.com/cdk/v2/guide/cli.html#cli-commands)
+ Sumber daya AWS Step Functions:
  + [Memulai AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/getting-started-with-sfn.html)
  + [Pemecahan Masalah](https://docs.aws.amazon.com/step-functions/latest/dg/troubleshooting.html)
+ [Membangun fungsi Lambda dengan Python](https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html)
+ [Pembuat Aplikasi AI Generatif di AWS](https://docs.aws.amazon.com/solutions/latest/generative-ai-application-builder-on-aws/solution-overview.html)

**Sumber daya lainnya**
+ [LangChain dokumentasi](https://python.langchain.com/docs/get_started/introduction)