เรากำลังย้ายปัญหาไปที่จิรา
ตั้งแต่เดือนมกราคม 2023 เป็นต้นไป ปัญหาสำหรับ Rasa Open Source จะอยู่ในบอร์ด Jira นี้ คุณสามารถเรียกดูปัญหาโดยไม่ต้องเข้าสู่ระบบ หากคุณต้องการสร้างปัญหา คุณจะต้องสร้างบัญชี Jira
Rasa เป็นเฟรมเวิร์กแมชชีนเลิร์นนิงแบบโอเพ่นซอร์สเพื่อทำให้การสนทนาด้วยข้อความและเสียงเป็นแบบอัตโนมัติ ด้วย Rasa คุณสามารถสร้างผู้ช่วยตามบริบทได้ที่:
หรือผู้ช่วยเสียงเช่น:
Rasa ช่วยให้คุณสร้างผู้ช่วยตามบริบทที่สามารถสนทนาแบบเป็นชั้นๆ ที่มีการโต้ตอบกลับไปกลับมามากมาย เพื่อให้มนุษย์มีการแลกเปลี่ยนอย่างมีความหมายกับผู้ช่วยตามบริบท ผู้ช่วยจะต้องสามารถใช้บริบทเพื่อสร้างสิ่งที่ได้พูดคุยกันก่อนหน้านี้ Rasa ช่วยให้คุณสร้างผู้ช่วยที่สามารถทำสิ่งนี้ได้ในวิธีที่ปรับขนาดได้
มีข้อมูลความเป็นมาเพิ่มเติมมากมายในโพสต์บล็อกนี้
- เรียนรู้เพิ่มเติมเกี่ยวกับ รสา
- อ่านเอกสาร
- ติดตั้ง รสา
เจาะลึกในศูนย์การเรียนรู้
- มีส่วนช่วย
❓ รับการสนับสนุนระดับองค์กร
- สำรวจคุณสมบัติของแพลตฟอร์มเชิงพาณิชย์ของเรา
เรียนรู้เพิ่มเติมเกี่ยวกับงานวิจัยที่ใช้ประโยชน์จาก Rasa
มีเอกสารประกอบมากมายใน Rasa Docs ตรวจสอบให้แน่ใจว่าได้เลือกเวอร์ชันที่ถูกต้อง เพื่อดูเอกสารสำหรับเวอร์ชันที่คุณติดตั้ง
โปรดใช้ฟอรัมชุมชน Rasa เพื่อตอบคำถามอย่างรวดเร็ว
เรายินดีเป็นอย่างยิ่งที่ได้รับและรวมการมีส่วนร่วมของคุณเข้ากับพื้นที่เก็บข้อมูลนี้!
หากต้องการมีส่วนร่วมผ่านคำขอดึง ให้ทำตามขั้นตอนเหล่านี้:
สำหรับคำแนะนำโดยละเอียดเพิ่มเติมเกี่ยวกับวิธีร่วมเขียนโค้ด โปรดดูคำแนะนำสำหรับผู้ร่วมเขียนโค้ดเหล่านี้
คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับวิธีการมีส่วนร่วมกับ Rasa (ในรูปแบบต่างๆ มากมาย!) บนเว็บไซต์ของเรา
คำขอดึงของคุณจะได้รับการตรวจสอบโดยผู้ดูแล ซึ่งจะติดต่อคุณกลับเกี่ยวกับการเปลี่ยนแปลงหรือคำถามที่จำเป็น คุณจะถูกขอให้ลงนามในข้อตกลงสิทธิ์การใช้งานผู้ร่วมให้ข้อมูล
รสาใช้บทกวีเพื่อการจัดการบรรจุภัณฑ์และการพึ่งพา หากคุณต้องการสร้างจากแหล่งที่มา คุณต้องติดตั้ง Poetry ก่อน โปรดปฏิบัติตามคำแนะนำอย่างเป็นทางการเพื่อดูตัวเลือกที่เป็นไปได้ทั้งหมด
หากต้องการอัปเดตเวอร์ชันบทกวีที่มีอยู่เป็นเวอร์ชันที่ใช้ใน rasa ในปัจจุบัน ให้รัน:
poetry self update < version >
คู่มือบทกวีอย่างเป็นทางการแนะนำให้ใช้ pyenv หรือเครื่องมืออื่นที่คล้ายคลึงกันเพื่อสลับระหว่างเวอร์ชัน Python ได้อย่างง่ายดาย นี่คือวิธีที่สามารถทำได้:
pyenv install 3.10.10
pyenv local 3.10.10 # Activate Python 3.10.10 for the current project
หมายเหตุ : หากคุณประสบปัญหาในการติดตั้ง Python เวอร์ชันใดเวอร์ชันหนึ่งบนระบบของคุณ อาจคุ้มค่าที่จะลองใช้เวอร์ชันอื่นที่รองรับ
ตามค่าเริ่มต้น Poetry จะพยายามใช้เวอร์ชัน Python ที่เปิดใช้งานอยู่ในปัจจุบันเพื่อสร้างสภาพแวดล้อมเสมือนสำหรับโปรเจ็กต์ปัจจุบันโดยอัตโนมัติ คุณยังสามารถสร้างและเปิดใช้งานสภาพแวดล้อมเสมือนจริงได้ด้วยตนเอง ในกรณีนี้ Poetry ควรเลือกใช้และใช้เพื่อติดตั้งการขึ้นต่อกัน ตัวอย่างเช่น:
python -m venv .venv
source .venv/bin/activate
คุณสามารถตรวจสอบให้แน่ใจว่าสภาพแวดล้อมถูกหยิบขึ้นมาโดยการดำเนินการ
poetry env info
หากต้องการติดตั้งการพึ่งพาและ rasa
ในโหมดแก้ไขให้ดำเนินการ
make install
หมายเหตุสำหรับผู้ใช้ macOS : ภายใต้ macOS Big Sur เราพบปัญหาคอมไพเลอร์บางประการสำหรับการขึ้นต่อกัน การใช้ export SYSTEM_VERSION_COMPAT=1
ก่อนการติดตั้งจะช่วยได้
ในการติดตั้งการขึ้นต่อกันของ rasa คุณต้องรัน:
make install-full
หมายเหตุสำหรับผู้ใช้ macOS : คำสั่ง make install-full
อาจส่งผลให้เกิดความล้มเหลวขณะติดตั้ง tokenizers
(ปัญหาที่อธิบายโดยละเอียดที่นี่)
ในการแก้ไข คุณต้องทำตามขั้นตอนเหล่านี้เพื่อติดตั้งคอมไพเลอร์ Rust:
brew install rustup
rustup-init
หลังจากเริ่มต้นคอมไพเลอร์ Rust คุณควรรีสตาร์ทคอนโซลและตรวจสอบการติดตั้ง:
rustc --version
ในกรณีที่ตัวแปร PATH ไม่ได้ถูกตั้งค่าโดยอัตโนมัติ ให้รัน:
export PATH= " $HOME /.cargo/bin: $PATH "
ก่อนอื่น ให้ติดตั้งการขึ้นต่อกันที่จำเป็นทั้งหมด:
make install install-docs
หลังจากการติดตั้งเสร็จสิ้น คุณสามารถเรียกใช้และดูเอกสารประกอบภายในเครื่องได้โดยใช้:
make livedocs
ควรเปิดแท็บใหม่พร้อมกับเอกสารเวอร์ชันท้องถิ่นในเบราว์เซอร์ของคุณ ถ้าไม่ ให้ไปที่ http://localhost:3000 ในเบราว์เซอร์ของคุณ ตอนนี้คุณสามารถเปลี่ยนเอกสารในเครื่องได้ และหน้าเว็บจะโหลดซ้ำและใช้การเปลี่ยนแปลงของคุณโดยอัตโนมัติ
เพื่อดำเนินการทดสอบ ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งข้อกำหนดการพัฒนา:
make prepare-tests-ubuntu # Only on Ubuntu and Debian based systems
make prepare-tests-macos # Only on macOS
จากนั้นรันการทดสอบ:
make test
นอกจากนี้ยังสามารถรันได้หลายงานเพื่อประหยัดเวลา:
JOBS=[n] make test
โดยที่ [n]
คือจำนวนงานที่ต้องการ หากละเว้น [n]
จะถูกเลือกโดยอัตโนมัติโดย pytest
เพื่อรันการทดสอบการรวม ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งข้อกำหนดการพัฒนา:
make prepare-tests-ubuntu # Only on Ubuntu and Debian based systems
make prepare-tests-macos # Only on macOS
จากนั้น คุณจะต้องเริ่มบริการด้วยคำสั่งต่อไปนี้ซึ่งใช้ Docker Compose:
make run-integration-containers
สุดท้าย คุณสามารถรันการทดสอบการรวมได้ดังนี้:
make test-integration
Poetry ไม่มีวิธีแก้ปัญหาใดๆ ที่สามารถช่วยแก้ไขข้อขัดแย้งในการผสานในไฟล์ล็อค poetry.lock
ตามค่าเริ่มต้น อย่างไรก็ตาม มีเครื่องมือที่ยอดเยี่ยมที่เรียกว่า Po Potry-Merge-Lock นี่คือวิธีการติดตั้ง:
pip install poetry-merge-lock
เพียงดำเนินการคำสั่งนี้เพื่อแก้ไขข้อขัดแย้งในการผสานใน poetry.lock
โดยอัตโนมัติ:
poetry-merge-lock
ในการสร้างอิมเมจ Docker บนเครื่องของคุณให้รันคำสั่งต่อไปนี้:
make build-docker
อิมเมจ Docker มีอยู่ในเครื่องของคุณเป็น rasa:localdev
เพื่อให้แน่ใจว่ารูปแบบโค้ดที่ได้มาตรฐาน เราใช้ฟอร์แมตเตอร์สีดำ เพื่อให้แน่ใจว่าคำอธิบายประกอบประเภทของเราถูกต้อง เราใช้ pytype ของตัวตรวจสอบประเภท หากโค้ดของคุณมีรูปแบบไม่ถูกต้องหรือไม่พิมพ์เช็ค GitHub จะไม่สามารถสร้างได้
หากคุณต้องการจัดรูปแบบโค้ดของคุณโดยอัตโนมัติในทุกการคอมมิต คุณสามารถใช้การคอมมิตล่วงหน้าได้ เพียงติดตั้งผ่าน pip install pre-commit
และดำเนินการ pre-commit install
ในโฟลเดอร์รูท สิ่งนี้จะเพิ่ม hook ให้กับพื้นที่เก็บข้อมูล ซึ่งจะฟอร์แมตไฟล์ในทุก ๆ การคอมมิต
หากคุณต้องการตั้งค่าด้วยตนเอง ให้ติดตั้ง black ผ่าน poetry install
หากต้องการฟอร์แมตไฟล์ให้ดำเนินการ
make formatter
หากคุณต้องการตรวจสอบประเภทบน codebase ให้ติดตั้ง mypy
โดยใช้ poetry install
เพื่อตรวจสอบประเภทดำเนินการ
make types
เราใช้ Docusaurus v2
เพื่อสร้างเอกสารสำหรับเวอร์ชันที่แท็กและสำหรับสาขา main
หากต้องการรัน Docusaurus ให้ติดตั้ง Node.js 12.x
ไซต์คงที่ที่ถูกสร้างขึ้นจะถูกส่งไปยังสาขา documentation
ของ repo นี้
เราโฮสต์เว็บไซต์บน netlify ในการสร้างสาขา main
(ดู .github/workflows/documentation.yml
) เราจะส่งเอกสารที่สร้างขึ้นไปยังสาขา documentation
Netlify จะปรับใช้หน้าเอกสารอีกครั้งโดยอัตโนมัติทุกครั้งที่มีการเปลี่ยนแปลงในสาขานั้น
Rasa ได้ใช้นโยบายที่เข้มงวดที่ควบคุมการตั้งชื่อเวอร์ชัน เช่นเดียวกับอัตราการเผยแพร่สำหรับรุ่นหลัก รุ่นรอง และรุ่นแพทช์
ค่าสำหรับหมายเลขเวอร์ชันที่กำหนด (MAJOR.MINOR.PATCH) จะเพิ่มขึ้นดังนี้:
ตารางต่อไปนี้อธิบายประเภทเวอร์ชันและ จังหวะการเผยแพร่ ที่คาดหวัง:
ประเภทเวอร์ชัน | คำอธิบาย | จังหวะเป้าหมาย |
---|---|---|
วิชาเอก | สำหรับการเปลี่ยนแปลงที่สำคัญ หรือเมื่อมีการนำเสนอการเปลี่ยนแปลงที่เข้ากันไม่ได้แบบย้อนหลังกับ API หรือโมเดลข้อมูล | ทุก 1-2 ปี |
ส่วนน้อย | สำหรับเมื่อมีการเปิดตัวฟังก์ชันใหม่ที่เข้ากันได้แบบย้อนหลัง มีการแนะนำคุณสมบัติรอง หรือเมื่อมีการเปิดตัวชุดคุณสมบัติเล็กๆ น้อยๆ | +/- รายไตรมาส |
แพทช์ | สำหรับการแก้ไขข้อบกพร่องที่เข้ากันได้แบบย้อนหลังซึ่งแก้ไขพฤติกรรมที่ไม่ถูกต้อง | ตามความจำเป็น |
แม้ว่าตารางนี้แสดงถึงความถี่ในการเผยแพร่เป้าหมายของเรา แต่เราขอสงวนสิทธิ์ในการปรับเปลี่ยนตามการเปลี่ยนแปลงของสภาวะตลาดและข้อกำหนดทางเทคนิค
นโยบายการสิ้นสุดอายุการใช้งานของเราจะกำหนดระยะเวลาที่ถือว่ารีลีสที่กำหนดได้รับการสนับสนุน รวมถึงระยะเวลาที่รีลีสยังถือว่ายังอยู่ในการพัฒนาหรือการบำรุงรักษาที่ใช้งานอยู่
ระยะเวลาการบำรุงรักษาและการสิ้นสุดอายุการใช้งานของทุกรุ่นจะปรากฏบนเว็บไซต์ของเราโดยเป็นส่วนหนึ่งของนโยบายการเปิดตัวผลิตภัณฑ์และการบำรุงรักษา
หลังจากการเปิดตัวรุ่นหลักเสร็จสมบูรณ์แล้ว โปรดปฏิบัติตามคำแนะนำเหล่านี้เพื่ออัปเดตเอกสารให้เสร็จสิ้น
การเปิดตัวเวอร์ชันใหม่นั้นค่อนข้างง่าย เนื่องจากแพ็คเกจต่างๆ สร้างและจัดจำหน่ายโดย GitHub Actions
ขั้นตอนการวางจำหน่าย :
git checkout -b 1.2.x
git push origin 1.2.x
main
ในกรณีของวิชาเอก สาขา <major>.<minor>.x
สำหรับผู้เยาว์และแพตช์)rasa-sdk
ใน pyproject.toml
ด้วยเวอร์ชันรีลีสใหม่ และรัน poetry update
สิ่งนี้จะสร้างไฟล์ poetry.lock
ใหม่โดยแก้ไขการขึ้นต่อกันทั้งหมดgit commit -am "bump rasa-sdk dependency"
แต่อย่าผลักมัน พวกเขาจะถูกหยิบขึ้นมาโดยอัตโนมัติตามขั้นตอนต่อไปนี้make release
1.2.x
)git checkout 1.2.x
git pull origin 1.2.x
git tag 1.2.0 -m " next release "
git push origin 1.2.0 --tags
product
) ของบริษัทเช่นนี้event: push
และ branch: <version number>
(ตัวอย่างในรีลีส 2.4 คุณสามารถดูได้ที่นี่)product
แล้ว ให้ตรวจสอบในช่อง product-engineering-alerts
ด้วย หากมีการแจ้งเตือนใด ๆ ที่เกี่ยวข้องกับการเปิดตัว Rasa Open Source เช่นนี้การเผยแพร่แพตช์นั้นตัดได้ง่ายกว่า เนื่องจากมีไว้เพื่อแก้ไขข้อบกพร่องเท่านั้น
สิ่งเดียวที่คุณต้องทำเพื่อตัดการปล่อยแพตช์คือ:
2.0.4
คุณจะต้องแก้ไขให้อยู่ในสาขาการเผยแพร่ 2.0.x
) แพทช์ที่ออกทั้งหมดจะต้องมาจากสาขา .x
!make release
และทำตามขั้นตอน + รวม PR เข้าด้วยกัน.x
อีกครั้งแล้วกดแท็ก!หมายเหตุ: สิ่งนี้จำเป็นเฉพาะในกรณีที่เวอร์ชันที่วางจำหน่ายเป็นเวอร์ชันสูงสุดที่มีอยู่ ตัวอย่างเช่น ทำตามขั้นตอนต่อไปนี้เมื่อเวอร์ชัน > เวอร์ชันบนหลัก
เพื่อตรวจสอบความเข้ากันได้ระหว่างเวอร์ชัน Rasa ที่ออกใหม่กับ Rasa X/Enterprise เวอร์ชันล่าสุด เราดำเนินการตามขั้นตอนต่อไปนี้:
โปรดดูที่หน้านโยบายการเปิดตัวและบำรุงรักษาผลิตภัณฑ์ Rasa
ได้รับอนุญาตภายใต้ Apache License เวอร์ชัน 2.0 ลิขสิทธิ์ 2022 Rasa Technologies GmbH สำเนาใบอนุญาต
รายการสิทธิ์การใช้งานของการขึ้นต่อกันของโปรเจ็กต์สามารถดูได้ที่ด้านล่างของข้อมูลสรุปไลบรารี