วิธีที่เรียบร้อยในการเรียกใช้โมเดลบน Amazon Bedrock เขียนด้วยภาษา Rust และถ่ายทอดสดบน Twitch
ใหม่ ณ 0.8.2 - เบต้า: ตอนนี้คุณสามารถส่งออกการแชทของคุณเป็นไฟล์ HTML ได้แล้ว (จะบันทึกเป็น
conversation.html
ในไดเร็กทอรีปัจจุบันเท่านั้น)
ปัจจุบันรองรับรุ่นต่อไปนี้:
โคลด 3.5 v2 ซอนเน็ต
คลอดด์ 3.5 ไฮกุ
คลอดด์ 3.5 ซอนเน็ต
คลอดด์ V2
โคลด วี 3 ซอนเน็ต
คลอดด์ V3 ไฮกุ
ลามะ2 70B
รุ่น LLama3.1
คำสั่งเชื่อมโยงกัน
จูราสสิค 2 อัลตร้า
ไททันเท็กซ์เอ็กซ์เพรส V1
โมเดล Mistral AI (Mixtral, Mistral7b และ Mistral Large 1 และ 2)
ในการเริ่มต้นใช้งาน คุณต้องทำบางสิ่ง:
เพื่อให้สามารถโต้ตอบกับ Amazon Bedrock ได้ คุณต้องมีชุด AWS Credentials บนเครื่องที่ Bedrust จะทำงาน วิธีที่ง่ายที่สุดในการตั้งค่านี้คือการกำหนดค่า AWS CLI ตรวจสอบให้แน่ใจว่าได้ติดตั้ง AWS CLI และรันคำสั่ง aws configure
เพื่อตั้งค่าข้อมูลรับรองของคุณ
หากต้องการตรวจสอบว่าคุณได้ตั้งค่าข้อมูลรับรอง AWS อย่างถูกต้องหรือไม่ คุณสามารถเรียกใช้ aws sts get-caller-identity
:
darko@devbox [~/workspace/projects/bedrust]: aws sts get-caller-identity {"รหัสผู้ใช้": "AIDAXXXXXXXXXXXXXXXXXX5", "บัญชี": "123456789999999", "Arn": "arn:aws:iam::123456789999999:user/alan-ford"}
โอ้ ใช่แล้ว ตรวจสอบให้แน่ใจว่าผู้ใช้ที่มีข้อมูลประจำตัวที่คุณกำหนดค่ามีสิทธิ์ในการ InvokeModel
บน Amazon Bedrock
นั่นก็สมเหตุสมผลแล้ว นี่คือแอปพลิเคชัน Rust วิธีเริ่มต้นที่ง่ายที่สุดคือการใช้สนิม
ตอนนี้ คุณต้องมีแพ็คเกจเพิ่มเติมเพื่อให้สามารถคอมไพล์ bedrust ได้ กล่าวคือคุณต้องการกลุ่มแพ็คเกจ build-essential
(หรือคล้ายกัน) ชื่ออาจแตกต่างกันขึ้นอยู่กับระบบปฏิบัติการของคุณและตัวจัดการแพ็คเกจ
อูบุนตู/เดเบียน:
sudo apt install build-essential
อาร์คลินุกซ์:
sudo pacman -S base-devel
แมคโอเอส:
xcode-select --install
อเมซอน ลินุกซ์/เรดแฮท/CentOS:
yum groupinstall "Development Tools"
หากต้องการติดตั้งแอปพลิเคชันในเครื่อง เพียงเรียกใช้:
cargo install bedrust
สิ่งนี้จะติดตั้งไบนารีที่คอมไพล์แล้วลงในไดเร็กทอรี $CARGO_HOME/bin
ของคุณ หากคุณตั้งค่า $PATH
อย่างถูกต้อง คุณควรจะสามารถเรียกใช้งานได้ทันที แต่ก่อนที่คุณจะทำ...
มาเริ่มการกำหนดค่ากัน เนื่องจาก bedrust ใช้ไฟล์คอนฟิกูเรชัน ( bedrust_config.ron
) จึงจำเป็นต้องจัดเก็บไว้ในไดเร็กทอรี $HOME/.config/bedrust
(รวมถึงทรัพยากรอื่นๆ ด้วย) ตอนนี้ คุณสามารถดำเนินการได้ด้วยตนเอง แต่เรามีคุณสมบัติที่จะทำเพื่อคุณ เพียงแค่เรียกใช้:
bedrust --init
คุณจะถูกขอให้เลือกรุ่นเริ่มต้น และนี่จะสร้างไฟล์ที่จำเป็นทั้งหมดเพื่อให้คุณสามารถใช้ bedrust ได้ ไม่จำเป็นต้องแก้ไขไฟล์เหล่านี้ เว้นแต่คุณต้องการ
สุดท้าย หากต้องการรันแอปพลิเคชัน เพียงใช้คำสั่งต่อไปนี้:
bedrust -m <MODELNAME> # แทนที่ชื่อรุ่นด้วยชื่อรุ่นที่รองรับ
หรือหากคุณต้องการใช้โมเดลเริ่มต้น (อันที่กำหนดไว้ระหว่าง --init
/ ในไฟล์ปรับแต่งของคุณ) เพียงแค่เรียกใช้ bedrust
โดยไม่มีพารามิเตอร์ใด ๆ หากคุณไม่ได้เลือกโมเดลโดยส่งพารามิเตอร์ -m
และคุณไม่มีโมเดลเริ่มต้นที่ตั้งค่าไว้ในไฟล์ปรับแต่งของคุณ คุณจะได้รับแจ้งให้เลือกหนึ่งโมเดลในระหว่างการรัน
เครื่องมือบรรทัดคำสั่งเพื่อเรียกใช้และทำงานกับโมเดลภาษาขนาดใหญ่บน AWS โดยใช้ Amazon Bedrock การใช้งาน: bedrust [ตัวเลือก] ตัวเลือก: --init -m, --model-id <MODEL_ID> [ค่าที่เป็นไปได้: llama270b, llama31405b-instruct, llama3170b-instruct, llama318b-instruct, cohere-command, claude-v2, claude-v21, claude-v3-sonnet, claude-v3 -ไฮกุ claude-v35-sonnet, claude-v352-sonnet, claude-v35-haiku, jurrasic2-ultra, titan-text-express-v1, mixtral8x7b-instruct, Mistral7b-instruct, Mistral-ขนาดใหญ่, Mistral-large2] -c, --คำอธิบาย <คำอธิบาย> -s, --แหล่งที่มา <แหล่งที่มา> -x -h, --help ช่วยพิมพ์ -V, --version เวอร์ชันพิมพ์
เมื่อได้รับแจ้งให้ป้อนคำถามของคุณแล้วกด ENTER
หากต้องการออกจากโปรแกรม เพียงพิมพ์ /q
ในช่องคำถามของคุณ
คุณสมบัติใหม่: ด้วยความสามารถที่หลากหลายของ Claude V3 คุณสามารถส่งภาพไปยังโมเดลภาษาขนาดใหญ่ได้แล้ว ซึ่งหมายความว่าเราสามารถทำอะไรสนุกๆ บางอย่างได้ เช่น รูปภาพคำบรรยาย เพื่อประโยชน์ในการเข้าถึง คุณลักษณะนี้มีอยู่ใน Bedrust ตั้งแต่เวอร์ชัน 0.5.0
ปัจจุบันมีเพียงสองรุ่นที่รองรับสิ่งนี้ ได้แก่ Claude V3 Sonnet และ Claude V3 Haiku
หากต้องการใช้คำบรรยาย คุณเพียงแค่ต้องส่งพารามิเตอร์ -c
ไปให้พร้อมกับไดเร็กทอรีที่คุณมีรูปภาพ:
bedrust -m claude-v3-sonnet -c / tmp / ทดสอบภาพ /
วิธีนี้จะดึงรูปภาพที่รองรับและสร้างคำบรรยายสำหรับรูปภาพเหล่านั้น ในที่สุดก็สร้างไฟล์ captions.json
ในไดเร็กทอรีการทำงานปัจจุบันพร้อมคำบรรยายที่เชื่อมต่อกับเส้นทางรูปภาพ
นี่คือตัวอย่างของผลลัพธ์:
- {"path": "/tmp/test-images/4slika.jpeg", "คำบรรยาย": "พัดลม CPU ของคอมพิวเตอร์ระบายความร้อนแผงวงจรด้วยอีเทอร์เน็ตและพอร์ตอื่นๆ" - {"path": "/tmp/test-images/kompjuter.jpeg", "คำบรรยาย": "แผงวงจรเปิดที่มีส่วนประกอบอิเล็กทรอนิกส์และสายไฟต่างๆ วางอยู่ในสำนักงานหรือห้องทำงานโดยมีชั้นวางและอุปกรณ์มองเห็นได้ในพื้นหลัง " - {"path": "/tmp/test-images/c64.jpeg", "คำบรรยาย": "จอคอมพิวเตอร์ Commodore วินเทจที่แสดงโลโก้ Twitch บนหน้าจอ" - -
นอกจากนี้ คุณยังสามารถปรับแต่ง พรอมต์ คำอธิบายภาพและ รูปแบบไฟล์รูปภาพที่รองรับ โดยแก้ไขไฟล์ bedrust_config.ron
ในรูทของโปรเจ็กต์นี้
ตอนนี้คุณสามารถชี้ Bedrust ไปยังไดเร็กทอรีที่มีซอร์สโค้ดบางส่วนได้ สิ่งนี้จะช่วยให้คุณสามารถหารือเกี่ยวกับที่เก็บโค้ดของคุณในบริบท และสามารถให้คำแนะนำ การปรับปรุง และการพัฒนาเพิ่มเติมแก่คุณได้
หมายเหตุ: เนื่องจากนี่เป็นคุณลักษณะเบต้า จึงมีข้อจำกัด ตัวอย่างเช่น ไม่สามารถจัดการกับฐานโค้ดขนาดใหญ่ได้ และเนื่องจากจะส่งฐานโค้ดทั้งหมดของคุณไปยังบริบท คุณจึงอาจทำให้คุณต้องเสียค่าใช้จ่ายมากขึ้นอย่างมาก
bedrust --source ~/workspace/repos/your_code_repo
ในเวอร์ชัน 0.8.2 คุณสามารถบันทึกการสนทนาของคุณ เรียกคืนการสนทนาในภายหลัง และแม้แต่ส่งออกเป็นไฟล์ HTML ที่ดีได้แล้ว คุณลักษณะนี้ยังอยู่ในช่วง เบต้าจำนวนมาก ดังนั้นคาดว่าสิ่งต่างๆ จะเสียหายและฟังก์ชันการทำงานจะมีการเปลี่ยนแปลง
วิธีการทำงานคือ เมื่อคุณป้อน /s
เป็นคำสั่งแชท Bedrust จะบันทึกการสนทนาของคุณภายใน ~/.config/bedrust/chats
เป็นไฟล์ . .json
การกรอกนี้จะมีข้อมูลสรุปที่สร้างขึ้นและชื่อเรื่องสำหรับการสนทนา หากต้องการเรียกคืนการสนทนา คุณสามารถพิมพ์ /r
เป็นคำสั่งแชท และคุณจะสามารถเลือกการสนทนาที่บันทึกไว้ได้
หากต้องการส่งออกการสนทนาของคุณเป็น HTML เพียงเรียกใช้ /h
สิ่งนี้จะสร้างไฟล์ชื่อ conversation.html
ในไดเร็กทอรีปัจจุบัน ฉันยังไม่ได้ใช้คุณสมบัติในการเลือกตำแหน่งที่จะบันทึกไฟล์นี้ ดังนั้นในขณะนี้จึงเป็นเช่นนี้ (มันอยู่ในรุ่นเบต้าแล้วเหรอ?)
มีไฟล์การกำหนดค่าที่สำคัญหนึ่งไฟล์ที่มาพร้อมกับ bedrust :
bedrust_config.ron
- เก็บพารามิเตอร์การกำหนดค่าที่เกี่ยวข้องกับแอปพลิเคชันเอง
พวกเขา จะต้อง อยู่ในไดเรกทอรี $HOME/.config/bedrust/
ของคุณ แอปพลิเคชันจะเตือนคุณหากไม่มีอยู่และไม่สามารถรันได้ คุณสามารถสร้างได้โดยอัตโนมัติด้วยการรัน bedrust --init
ความสามารถในการรับข้อมูลจากผู้ใช้
สามารถเลือกรุ่นได้
พูดคุยกับนางแบบ
สตรีมการตอบกลับทีละคำ
การจัดการข้อผิดพลาดที่ดีขึ้น
การทดสอบรหัส
ความสามารถในการสร้างภาพ
ทำให้สวยขึ้น
จัดการน้ำพริกยาวได้ดีกว่า
การจัดการข้อมูลประจำตัวของ Bedder