โซลูชันการพิสูจน์แนวคิดนี้อธิบายถึงโซลูชันที่เป็นไปได้ที่สามารถใช้เพื่อรวบรวมความรู้เกี่ยวกับชนเผ่าผ่านการบันทึกเสียงจากพนักงานอาวุโสของบริษัท โดยสรุปวิธีการใช้บริการ Amazon Transcribe และ Amazon Bedrock สำหรับการจัดทำเอกสารที่เป็นระบบและการตรวจสอบความถูกต้องของข้อมูลอินพุต ด้วยการจัดทำโครงสร้างสำหรับการจัดความรู้ที่ไม่เป็นทางการนี้อย่างเป็นทางการ โซลูชันนี้รับประกันอายุการใช้งานที่ยืนยาวและการนำไปประยุกต์ใช้กับกลุ่มพนักงานในองค์กรที่ตามมา ความพยายามนี้ไม่เพียงแต่รับประกันการรักษาความเป็นเลิศในการปฏิบัติงานอย่างยั่งยืน แต่ยังปรับปรุงประสิทธิผลของโปรแกรมการฝึกอบรมผ่านการบูรณาการความรู้เชิงปฏิบัติที่ได้รับจากประสบการณ์โดยตรง
แอปพลิเคชันสาธิตนี้เป็นข้อพิสูจน์แนวคิดสำหรับแอปพลิเคชันสร้างเอกสารโดยใช้ Amazon Transcribe และ Amazon Bedrock
แผนภาพแสดงสถาปัตยกรรมโซลูชันสำหรับเวิร์กโฟลว์ที่ควบคุมโดย AWS Step Functions ภายใน AWS Cloud Region เวิร์กโฟลว์ประกอบด้วยหลายขั้นตอนที่ออกแบบมาเพื่อประมวลผลอินพุตของผู้ใช้ โดยมีกลไกในการจัดการความสำเร็จและความล้มเหลวในแต่ละขั้นตอน ด้านล่างนี้เป็นคำอธิบายของผังกระบวนการ:
อินพุตของผู้ใช้ : เวิร์กโฟลว์จะเริ่มต้นด้วยอินพุตของผู้ใช้เพื่อทริกเกอร์ฟังก์ชัน preprocess
Lambda
ประมวลผลล่วงหน้า : อินพุตจะถูกประมวลผลล่วงหน้าก่อน หากสำเร็จ ระบบจะย้ายไปยังขั้นตอน transcribe
หากล้มเหลว Amazon SNS จะสั่งให้ส่งการแจ้งเตือน
Transcribe : ขั้นตอนนี้ใช้เอาต์พุตจากขั้นตอนก่อนหน้า การถอดเสียงที่สำเร็จจะดำเนินต่อไปยังขั้นตอนตรวจสอบ และเอาต์พุตการถอดเสียงจะถูกจัดเก็บไว้ในบัคเก็ต Amazon S3
Validate : ข้อมูลที่ถูกถอดเสียงได้รับการตรวจสอบแล้ว ขึ้นอยู่กับผลการตรวจสอบ เวิร์กโฟลว์จะแตกต่าง:
สรุป : การตรวจสอบภายหลัง หากสรุปข้อมูลได้สำเร็จ ข้อความสรุปจะถูกจัดเก็บไว้ในบัคเก็ต Amazon S3 หากล้มเหลว จะทริกเกอร์ Amazon SNS ให้ส่งการแจ้งเตือน
Amazon Bedrock เป็นบริการหลักที่รองรับฟังก์ชันตรวจสอบและสรุป Lambda
สร้าง : ขั้นตอนสุดท้ายนี้จะสร้างเอกสารขั้นสุดท้ายจากข้อความสรุป หากล้มเหลว Amazon SNS จะสั่งให้ส่งการแจ้งเตือน
แต่ละขั้นตอนในกระบวนการจะถูกทำเครื่องหมายด้วยเส้นทาง "สำเร็จ" หรือ "ล้มเหลว" ซึ่งบ่งบอกถึงความสามารถของเวิร์กโฟลว์ในการจัดการข้อผิดพลาดในขั้นตอนต่างๆ เมื่อเกิดความล้มเหลว Amazon SNS จะถูกใช้เพื่อส่งการแจ้งเตือนไปยังผู้ใช้
เวิร์กโฟลว์ AWS Step Functions ทำงานเป็นผู้ควบคุมศูนย์กลาง เพื่อให้มั่นใจว่าแต่ละงานได้รับการดำเนินการในลำดับที่ถูกต้อง และจัดการความสำเร็จหรือความล้มเหลวของแต่ละขั้นตอนได้อย่างเหมาะสม
ไฟล์ cdk.json
จะบอก CDK Toolkit ถึงวิธีดำเนินการแอปของคุณ
โปรเจ็กต์นี้ตั้งค่าเหมือนโปรเจ็กต์ Python มาตรฐาน กระบวนการเริ่มต้นยังสร้าง virtualenv ภายในโปรเจ็กต์นี้ ซึ่งจัดเก็บไว้ในไดเร็กทอรี .venv
ในการสร้าง virtualenv จะถือว่ามี python3
(หรือ python
สำหรับ Windows) ที่สามารถเรียกใช้งานได้ในเส้นทางของคุณพร้อมการเข้าถึงแพ็คเกจ venv
หากการสร้าง virtualenv อัตโนมัติล้มเหลวไม่ว่าด้วยเหตุผลใดก็ตาม คุณสามารถสร้าง virtualenv ด้วยตนเองได้
หากต้องการสร้าง virtualenv บน MacOS และ Linux ด้วยตนเอง:
$ python3 -m venv .venv
หลังจากกระบวนการเริ่มต้นเสร็จสิ้นและสร้าง virtualenv แล้ว คุณสามารถใช้ขั้นตอนต่อไปนี้เพื่อเปิดใช้งาน virtualenv ของคุณ
$ source .venv/bin/activate
หากคุณเป็นแพลตฟอร์ม Windows คุณจะเปิดใช้งาน virtualenv ดังนี้:
% .venvScripts activate.bat
เมื่อเปิดใช้งาน virtualenv แล้ว คุณจะสามารถติดตั้งการขึ้นต่อกันที่จำเป็นได้
$ pip install -r requirements.txt
หากต้องการเพิ่มการขึ้นต่อกันเพิ่มเติม เช่น ไลบรารี CDK อื่นๆ เพียงเพิ่มลงในไฟล์ setup.py
ของคุณแล้วรันคำสั่ง pip install -r requirements.txt
อีกครั้ง
ณ จุดนี้ คุณสามารถสังเคราะห์เทมเพลต CloudFormation สำหรับโค้ดนี้ได้
$ cdk synth
หากต้องการเพิ่มการขึ้นต่อกันเพิ่มเติม เช่น ไลบรารี CDK อื่นๆ เพียงเพิ่มลงในไฟล์ setup.py
ของคุณแล้วรันคำสั่ง pip install -r requirements.txt
อีกครั้ง
คุณจะต้องบูตเครื่องหากนี่เป็นครั้งแรกที่คุณใช้งาน cdk ในบัญชีและภูมิภาคใดบัญชีหนึ่ง
$ cdk bootstrap
เมื่อบูตสแตรปแล้ว คุณสามารถดำเนินการปรับใช้ cdk ได้
$ cdk deploy
หากนี่เป็นครั้งแรกที่คุณปรับใช้ กระบวนการอาจใช้เวลาประมาณ 30-45 นาทีในการสร้างอิมเมจ Docker หลายรายการใน ECS (Amazon Elastic Container Service) โปรดอดใจรอจนกว่าจะเสร็จสมบูรณ์ หลังจากนั้นจะเริ่มปรับใช้ docgen-stack ซึ่งโดยทั่วไปจะใช้เวลาประมาณ 5-8 นาที
เมื่อกระบวนการปรับใช้เสร็จสมบูรณ์ คุณจะเห็นเอาต์พุตของ cdk ในเทอร์มินัล และคุณยังสามารถตรวจสอบสถานะในคอนโซล CloudFormation ของคุณได้อีกด้วย
หากต้องการลบ cdk เมื่อคุณใช้งานเสร็จแล้วเพื่อหลีกเลี่ยงค่าใช้จ่ายในอนาคต คุณสามารถลบผ่านคอนโซลหรือดำเนินการคำสั่งต่อไปนี้ในเทอร์มินัล
$ cdk destroy
คุณอาจต้องลบบัคเก็ต S3 ที่สร้างโดย cdk ด้วยตนเอง โปรดตรวจสอบให้แน่ใจว่าได้ลบทรัพยากรที่สร้างขึ้นทั้งหมดเพื่อหลีกเลี่ยงค่าใช้จ่ายที่เกิดขึ้น
cdk ls
แสดงรายการสแต็กทั้งหมดในแอปcdk synth
ปล่อยเทมเพลต CloudFormation ที่สังเคราะห์แล้วcdk deploy
ปรับใช้สแต็กนี้กับบัญชี/ภูมิภาค AWS เริ่มต้นของคุณcdk diff
เปรียบเทียบสแต็กที่ปรับใช้กับสถานะปัจจุบันcdk docs
เปิดเอกสาร CDKcdk destroy
dstroys หนึ่งสแต็กที่ระบุขึ้นไป code # Root folder for code for this solution
├── lambdas # Root folder for all lambda functions
│ ├── preprocess # Lambda function that processes user input, and outputs audio files uris for Amazon Transcribe
│ ├── transcribe # Lambda function that triggers Amazon Transcribe batch transcription
│ ├── validate # Lambda function that analyzes answers from Amazon Transcribe using LLMs from Amazon Bedrock
│ ├── summarize # Lambda function that summarizes on-topic texts from Amazon Transcribe using LLMs from Amazon Bedrock
│ └── generate # Lambda function that generates documents from the summary.
└── code_stack.py # Amazon CDK stack that deploys all AWS resources
หากต้องการปรับแต่งแอปพลิเคชัน DocGen ให้รวมข้อมูลของคุณเอง ควรปฏิบัติตามขั้นตอนต่อไปนี้:
เมื่อปรับใช้ โครงสร้างพื้นฐาน AWS CDK จะอำนวยความสะดวกในการถ่ายโอนไฟล์เสียงอัตโนมัติไปยังบัคเก็ต Amazon S3 ที่กำหนด จากนั้น คุณสามารถเริ่มต้นการดำเนินการ AWS Step Function เพื่อเริ่มขั้นตอนการประมวลผลได้
เมื่อปรับใช้โซลูชันแล้ว คุณสามารถสมัครรับอีเมลของคุณในหัวข้อ SNS เพื่อรับการแจ้งเตือน
โปรดปฏิบัติตามการแจ้งเตือนทางอีเมล SNS
หากขั้นตอนใดๆ ภายในเวิร์กโฟลว์ StepFunction ล้มเหลว คุณจะได้รับการแจ้งเตือนทางอีเมล
หลังจากการปรับใช้ คุณสามารถทริกเกอร์ AWS State Machine ที่ปรับใช้แล้วได้โดยใช้คำสั่งต่อไปนี้:
aws stepfunctions start-execution
--state-machine-arn "arn:aws:states:<your aws region>:<your account id>:stateMachine:genai-knowledge-capture-stack-state-machine"
--input "{"documentName": "<your document name>", "audioFileFolderUri": "s3://<your s3 bucket>/assets/audio_samples/what is amazon bedrock/"}"
ดูการมีส่วนร่วมสำหรับข้อมูลเพิ่มเติม
ห้องสมุดนี้ได้รับอนุญาตภายใต้ใบอนุญาต MIT-0 ดูไฟล์ใบอนุญาต