Kami sedang memigrasikan masalah ke Jira
Mulai Januari 2023, terbitan Rasa Open Source berlokasi di board Jira ini. Anda dapat menelusuri masalah tanpa harus login; jika Anda ingin membuat masalah, Anda harus membuat akun Jira.
Rasa adalah kerangka pembelajaran mesin sumber terbuka untuk mengotomatiskan percakapan berbasis teks dan suara. Dengan Rasa, Anda dapat membuat asisten kontekstual di:
atau asisten suara sebagai:
Rasa membantu Anda membangun asisten kontekstual yang mampu melakukan percakapan berlapis dengan banyak percakapan bolak-balik. Agar manusia dapat melakukan pertukaran yang bermakna dengan asisten kontekstual, asisten harus dapat menggunakan konteks untuk membangun hal-hal yang telah dibahas sebelumnya – Rasa memungkinkan Anda membangun asisten yang dapat melakukan hal ini dengan cara yang terukur.
Ada lebih banyak informasi latar belakang di postingan blog ini.
? Pelajari selengkapnya tentang Rasa
? Baca Dokumen
? Instal Rasa
Selami lebih dalam pusat pembelajaran
? Menyumbang
❓ Dapatkan dukungan tingkat perusahaan
? Jelajahi fitur platform komersial kami
Pelajari lebih lanjut tentang makalah penelitian yang memanfaatkan Rasa
Ada dokumentasi ekstensif di Rasa Docs. Pastikan untuk memilih versi yang benar sehingga Anda dapat melihat dokumen untuk versi yang Anda instal.
Silakan gunakan Forum Komunitas Rasa untuk jawaban cepat atas pertanyaan.
Kami sangat senang menerima dan menggabungkan kontribusi Anda ke dalam repositori ini!
Untuk berkontribusi melalui permintaan tarik, ikuti langkah-langkah berikut:
Untuk petunjuk lebih detail tentang cara menyumbangkan kode, lihat pedoman kontributor kode ini.
Anda dapat menemukan informasi lebih lanjut tentang cara berkontribusi pada Rasa (dalam berbagai cara!) di situs web kami..
Permintaan penarikan Anda akan ditinjau oleh pengelola, yang akan menghubungi Anda kembali jika ada perubahan atau pertanyaan yang diperlukan. Anda juga akan diminta untuk menandatangani Perjanjian Lisensi Kontributor.
Rasa menggunakan Puisi untuk pengemasan dan manajemen ketergantungan. Jika ingin membangunnya dari sumber, Anda harus menginstal Puisi terlebih dahulu. Silakan ikuti panduan resmi untuk melihat semua opsi yang memungkinkan.
Untuk memperbarui versi puisi yang ada ke versi yang saat ini digunakan dalam rasa, jalankan:
poetry self update < version >
Panduan Puisi resmi menyarankan untuk menggunakan pyenv atau alat serupa lainnya untuk beralih antar versi Python dengan mudah. Inilah cara melakukannya:
pyenv install 3.10.10
pyenv local 3.10.10 # Activate Python 3.10.10 for the current project
Catatan : Jika Anda kesulitan menginstal versi python tertentu di sistem Anda, mungkin ada baiknya mencoba versi lain yang didukung.
Secara default, Puisi akan mencoba menggunakan versi Python yang saat ini diaktifkan untuk membuat lingkungan virtual untuk proyek saat ini secara otomatis. Anda juga dapat membuat dan mengaktifkan lingkungan virtual secara manual — dalam hal ini, Puisi harus mengambilnya dan menggunakannya untuk menginstal dependensi. Misalnya:
python -m venv .venv
source .venv/bin/activate
Anda dapat memastikan bahwa lingkungan diambil dengan mengeksekusi
poetry env info
Untuk menginstal dependensi dan rasa
itu sendiri dalam mode yang dapat diedit, jalankan
make install
Catatan untuk pengguna macOS : pada macOS Big Sur kami melihat beberapa masalah kompiler untuk dependensi. Menggunakan export SYSTEM_VERSION_COMPAT=1
sebelum instalasi membantu.
Untuk menginstal dependensi opsional rasa, Anda perlu menjalankan:
make install-full
Catatan untuk pengguna macOS : Perintah make install-full
dapat mengakibatkan kegagalan saat menginstal tokenizers
(masalah dijelaskan secara mendalam di sini).
Untuk mengatasinya, Anda harus mengikuti langkah-langkah berikut untuk menginstal kompiler Rust:
brew install rustup
rustup-init
Setelah menginisialisasi kompiler Rust, Anda harus me-restart konsol dan memeriksa instalasinya:
rustc --version
Jika variabel PATH belum diatur secara otomatis, jalankan:
export PATH= " $HOME /.cargo/bin: $PATH "
Pertama-tama, instal semua dependensi yang diperlukan:
make install install-docs
Setelah instalasi selesai, Anda dapat menjalankan dan melihat dokumentasi secara lokal menggunakan:
make livedocs
Ini akan membuka tab baru dengan versi lokal dokumen di browser Anda; jika tidak, kunjungi http://localhost:3000 di browser Anda. Anda sekarang dapat mengubah dokumen secara lokal dan halaman web akan secara otomatis memuat ulang dan menerapkan perubahan Anda.
Untuk menjalankan pengujian, pastikan Anda telah menginstal persyaratan pengembangan:
make prepare-tests-ubuntu # Only on Ubuntu and Debian based systems
make prepare-tests-macos # Only on macOS
Kemudian, jalankan tes:
make test
Mereka juga dapat dijalankan di beberapa pekerjaan untuk menghemat waktu:
JOBS=[n] make test
Dimana [n]
adalah jumlah pekerjaan yang diinginkan. Jika dihilangkan, [n]
akan otomatis dipilih oleh pytest.
Untuk menjalankan pengujian integrasi, pastikan Anda telah menginstal persyaratan pengembangan:
make prepare-tests-ubuntu # Only on Ubuntu and Debian based systems
make prepare-tests-macos # Only on macOS
Kemudian, Anda harus memulai layanan dengan perintah berikut yang menggunakan Docker Compose:
make run-integration-containers
Terakhir, Anda dapat menjalankan pengujian integrasi seperti ini:
make test-integration
Puisi tidak menyertakan solusi apa pun yang dapat membantu menyelesaikan konflik penggabungan di file kunci poetry.lock
secara default. Namun, ada alat hebat yang disebut kunci penggabungan puisi. Inilah cara Anda menginstalnya:
pip install poetry-merge-lock
Jalankan saja perintah ini untuk menyelesaikan konflik penggabungan di poetry.lock
secara otomatis:
poetry-merge-lock
Untuk membuat image Docker di mesin lokal Anda, jalankan perintah berikut:
make build-docker
Gambar Docker tersedia di mesin lokal Anda sebagai rasa:localdev
.
Untuk memastikan gaya kode standar kami menggunakan formatter hitam. Untuk memastikan anotasi tipe kami benar, kami menggunakan pemeriksa tipe pytype. Jika kode Anda tidak diformat dengan benar atau tidak diketik, GitHub akan gagal dibuat.
Jika Anda ingin memformat kode Anda secara otomatis pada setiap komit, Anda dapat menggunakan pra-komit. Instal saja melalui pip install pre-commit
dan jalankan pre-commit install
di folder root. Ini akan menambahkan hook ke repositori, yang memformat ulang file pada setiap komit.
Jika ingin mengaturnya secara manual, instal hitam melalui poetry install
. Untuk memformat ulang file, jalankan
make formatter
Jika Anda ingin memeriksa tipe pada basis kode, instal mypy
menggunakan poetry install
. Untuk memeriksa jenis yang dijalankan
make types
Kami menggunakan Docusaurus v2
untuk membuat dokumen untuk versi yang diberi tag dan untuk cabang main
. Untuk menjalankan Docusaurus, instal Node.js 12.x
. Situs statis yang dibangun didorong ke cabang documentation
repo ini.
Kami menghosting situs ini di netlify. Pada pembuatan cabang main
(lihat .github/workflows/documentation.yml
), kami memasukkan dokumen yang dibuat ke cabang documentation
. Netlify secara otomatis menyebarkan ulang halaman dokumen setiap kali ada perubahan pada cabang tersebut.
Rasa telah menerapkan kebijakan kuat yang mengatur penamaan versi, serta kecepatan rilis untuk rilis mayor, minor, dan patch.
Nilai untuk nomor versi tertentu (MAJOR.MINOR.PATCH) bertambah sebagai berikut:
Tabel berikut menjelaskan tipe versi dan irama rilis yang diharapkan:
Jenis Versi | Keterangan | Irama Sasaran |
---|---|---|
Besar | Untuk perubahan signifikan, atau ketika ada perubahan yang tidak kompatibel dengan API atau model data. | Setiap 1 - 2 tahun |
Kecil | Ketika fungsi baru yang kompatibel dengan versi sebelumnya diperkenalkan, fitur kecil diperkenalkan, atau ketika serangkaian fitur yang lebih kecil diluncurkan. | +/- Triwulanan |
Tambalan | Untuk perbaikan bug yang kompatibel dengan versi sebelumnya yang memperbaiki perilaku yang salah. | Sesuai kebutuhan |
Meskipun tabel ini mewakili target frekuensi rilis kami, kami berhak mengubahnya berdasarkan perubahan kondisi pasar dan persyaratan teknis.
Kebijakan Akhir Masa Pakai kami menentukan berapa lama rilis tertentu dianggap didukung, serta berapa lama rilis dianggap masih dalam pengembangan atau pemeliharaan aktif.
Durasi pemeliharaan dan akhir masa pakai setiap rilis ditampilkan di situs web kami sebagai bagian dari Kebijakan Rilis dan Pemeliharaan Produk.
Setelah rilis Major selesai, ikuti petunjuk berikut untuk menyelesaikan pembaruan dokumentasi.
Merilis versi baru cukup sederhana, karena paket dibuat dan didistribusikan oleh GitHub Actions.
Langkah-langkah rilis :
git checkout -b 1.2.x
git push origin 1.2.x
main
jika mayor, cabang <major>.<minor>.x
untuk minor dan patch)rasa-sdk
di pyproject.toml
dengan versi rilis baru dan jalankan poetry update
. Ini membuat file poetry.lock
baru dengan semua dependensi teratasi.git commit -am "bump rasa-sdk dependency"
tetapi jangan memaksakannya. Mereka akan diambil secara otomatis pada langkah berikut.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
) perusahaan seperti inievent: push
dan branch: <version number>
(contoh pada rilis 2.4 dapat Anda lihat di sini)product
channel, cek juga di product-engineering-alerts
channel apakah ada alert terkait rilis Rasa Open Source seperti iniRilis patch lebih mudah untuk dihentikan, karena dimaksudkan hanya berisi perbaikan bug.
Satu-satunya hal yang perlu Anda lakukan untuk menghentikan rilis patch adalah:
2.0.4
, Anda memerlukan perbaikan di cabang rilis 2.0.x
). Semua rilis patch harus berasal dari cabang .x
!make release
dan ikuti langkah-langkahnya + gabungkan PR..x
dan tekan tag!Catatan: Ini hanya diperlukan jika versi yang dirilis adalah versi tertinggi yang tersedia. Misalnya, lakukan langkah-langkah berikut ketika version > version di main.
Untuk memeriksa kompatibilitas antara versi Rasa yang baru dirilis dengan Rasa X/Enterprise versi terbaru, kami melakukan langkah-langkah berikut:
Silakan merujuk ke halaman Kebijakan Rilis dan Pemeliharaan Produk Rasa.
Berlisensi di bawah Lisensi Apache, Versi 2.0. Hak Cipta 2022 Rasa Technologies GmbH. Salinan lisensi.
Daftar Lisensi dependensi proyek dapat ditemukan di bagian bawah Ringkasan Perpustakaan.