Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen konteks
Memilih pendekatan konteks yang tepat
Amazon Q menawarkan tiga cara untuk menyediakan konteks, masing-masing dioptimalkan untuk kasus penggunaan yang berbeda:
| Pendekatan | Dampak Jendela Konteks | Tetap | Terbaik Untuk |
|---|---|---|---|
| Sumber Daya Agen | Selalu aktif (mengkonsumsi token) | Persisten di seluruh sesi | File proyek penting, standar, konfigurasi |
| Konteks Sesi | Selalu aktif (mengkonsumsi token) | Sesi saat ini saja | File sementara, eksperimen cepat |
| Basis Pengetahuan | Hanya ketika dicari | Persisten di seluruh sesi | Basis kode besar, dokumentasi ekstensif |
Diagram alur keputusan
Gunakan pohon keputusan ini untuk memilih pendekatan konteks yang sesuai:
-
Apakah konten Anda lebih besar dari 10MB atau berisi ribuan file?
-
Ya → Gunakan Basis Pengetahuan
-
Tidak → Lanjutkan ke langkah 2
-
-
Apakah Anda membutuhkan konteks ini dalam setiap percakapan?
-
Ya → Gunakan Sumber Daya Agen
-
Tidak → Gunakan Konteks Sesi
-
Referensi cepat:
-
File proyek penting (README, konfigurasi, standar) → Sumber Daya Agen
-
Basis kode besar atau set dokumentasi → Basis Pengetahuan
-
File sementara untuk tugas saat ini → Konteks Sesi
Memahami dampak jendela konteks
File konteks dan sumber daya agen menggunakan token dari jendela konteks Anda pada setiap permintaan, apakah direferensikan atau tidak. Gunakan /context show untuk memantau penggunaan token:
q chat > /context show Total: ~1100 tokens
Batas Token: File konteks dibatasi hingga 75% dari jendela konteks model Anda. File yang melebihi batas ini secara otomatis dijatuhkan.
Basis pengetahuan tidak menggunakan ruang jendela konteks sampai dicari, menjadikannya ideal untuk bahan referensi besar. Untuk informasi selengkapnya, lihat Konteks dasar pengetahuan (untuk kumpulan data besar).
Mengelola konteks
File konteks berisi informasi yang Anda ingin Amazon Q pertimbangkan selama percakapan Anda. Ini dapat mencakup persyaratan proyek, standar pengkodean, aturan pengembangan, atau informasi lain yang membantu Amazon Q memberikan tanggapan yang lebih relevan.
Mengkonfigurasi konteks persisten dengan sumber daya agen
Cara yang disarankan untuk mengonfigurasi konteks adalah melalui resources bidang di file konfigurasi agen Anda. Ini menciptakan konteks persisten yang tersedia setiap kali Anda menggunakan agen.
Tambahkan jalur file atau pola glob ke resources array di konfigurasi agen Anda:
{ "name": "my-agent", "description": "My development agent", "resources": [ "file://README.md", "file://.amazonq/rules/**/*.md", "file://docs/**/*.md", "file://src/config.py" ] }
Sumber daya harus diawali file:// untuk dimasukkan sebagai file konteks. File-file ini akan tersedia secara otomatis di semua sesi obrolan menggunakan agen ini.
Menambahkan konteks sesi sementara
Anda dapat menambahkan file sementara ke sesi obrolan Anda saat ini menggunakan /context add perintah. Penambahan ini hanya tersedia untuk sesi saat ini dan tidak akan bertahan saat Anda memulai sesi obrolan baru.
q chat > /context add README.md Added 1 path(s) to context. Note: Context modifications via slash command is temporary.
Anda juga dapat menambahkan beberapa file sekaligus menggunakan pola glob:
q chat > /context add docs/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.
Untuk membuat perubahan konteks permanen, tambahkan file ke resources bidang agen Anda sebagai gantinya. Untuk informasi selengkapnya, lihat Mengkonfigurasi konteks persisten dengan sumber daya agen.
Konteks dasar pengetahuan (untuk kumpulan data besar)
Untuk basis kode besar, kumpulan dokumentasi, atau bahan referensi yang akan melebihi batas jendela konteks, gunakan basis pengetahuan. Basis pengetahuan menyediakan kemampuan pencarian semantik tanpa menghabiskan ruang jendela konteks hingga dicari.
Aktifkan basis pengetahuan:
q settings chat.enableKnowledge true
Tambahkan konten ke basis pengetahuan:
q chat > /knowledge add /path/to/large-codebase --include "**/*.py" --exclude "node_modules/**"
Basis pengetahuan dicari sesuai permintaan oleh Amazon Q ketika informasi yang relevan diperlukan, menjadikannya ideal untuk bahan referensi besar.
Konteks tampilan
Untuk melihat konteks Anda saat ini, gunakan /context show perintah:
q chat > /context show 👤 Agent (my-agent): README.md (1 match) .amazonq/rules/**/*.md (3 matches) docs/**/*.md (5 matches) 💬 Session (temporary): <none> 5 matched files in use: 👤 README.md (~250 tkns) 👤 .amazonq/rules/security.md (~180 tkns) 👤 .amazonq/rules/coding-standards.md (~320 tkns) 👤 docs/architecture.md (~150 tkns) 👤 docs/best-practices.md (~200 tkns) Total: ~1100 tokens
Outputnya menunjukkan:
-
👤 Agen: Konteks persisten dari
resourcesbidang agen Anda -
💬 Sesi: Konteks sementara ditambahkan selama sesi saat ini
Menghapus konteks
Untuk menghapus file dari konteks sesi Anda saat ini, gunakan /context rm perintah:
q chat > /context rm src/temp-file.py Removed 1 path(s) from context. Note: Context modifications via slash command is temporary.
Untuk menghapus semua konteks sesi, gunakan /context clear perintah:
q chat > /context clear Cleared context Note: Context modifications via slash command is temporary.
Catatan: Anda tidak dapat menghapus konteks yang ditentukan agen menggunakan /context perintah. Untuk menghapus konteks secara permanen, edit resources bidang agen Anda.
Kasus penggunaan umum
Berikut adalah beberapa kasus penggunaan umum untuk manajemen konteks:
Menggunakan aturan proyek
Amazon Q mendukung aturan tingkat proyek yang dapat menentukan pedoman dan batasan keamanan. Aturan-aturan ini didefinisikan dalam file Markdown di .amazonq/rules direktori proyek Anda.
Misalnya, Anda dapat membuat aturan yang menentukan:
-
Direktori mana yang harus dihindari Amazon Q
-
Persyaratan keamanan untuk kode yang dihasilkan
-
Standar pengkodean dan praktik terbaik
Cara yang disarankan untuk memasukkan aturan proyek adalah melalui konfigurasi agen Anda:
{ "name": "my-project-agent", "resources": [ "file://.amazonq/rules/**/*.md", "file://README.md", "file://docs/architecture.md" ] }
Anda juga dapat menambahkan aturan proyek untuk sementara waktu ke sesi Anda saat ini:
q chat > /context add .amazonq/rules/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.
Untuk informasi selengkapnya tentang membuat dan menggunakan aturan proyek, lihat Membuat aturan proyek untuk digunakan dengan obrolan Pengembang Amazon Q di dokumentasi IDE.
Migrasi dari konteks sesi ke sumber daya agen
Jika Anda menemukan diri Anda berulang kali menambahkan file konteks yang sama menggunakan /context add perintah, pertimbangkan untuk memindahkannya ke resources bidang agen Anda untuk ketekunan:
-
Catat file yang sering Anda tambahkan
/context add -
Edit file konfigurasi agen Anda menggunakan
/agent editatau dengan langsung memodifikasi file -
Tambahkan path file ke
resourcesarray denganfile://awalan -
Simpan konfigurasi agen
Contoh migrasi:
# Instead of running these commands every session: > /context add README.md > /context add docs/*.md > /context add .amazonq/rules/*.md # Add them to your agent config once: { "resources": [ "file://README.md", "file://docs/**/*.md", "file://.amazonq/rules/**/*.md" ] }
Kapan menggunakan basis pengetahuan
Pertimbangkan basis pengetahuan ketika:
-
File konteks Anda melebihi batas token (75% dari jendela konteks)
-
Anda memiliki basis kode besar atau set dokumentasi
-
Anda membutuhkan pencarian semantik di seluruh materi yang luas
-
Anda ingin menghindari konsumsi jendela konteks yang konstan
Contoh: Alih-alih menambahkan basis kode besar sebagai file konteks:
# This would consume too many tokens: > /context add src/**/*.py # Use knowledge base instead: > /knowledge add src/ --include "**/*.py" --exclude "__pycache__/**"
Menyetel agen default dengan konteks
Anda dapat mengonfigurasi agen default yang menyertakan file konteks pilihan Anda:
q settings chat.defaultAgent my-project-agent
Ini memastikan konteks Anda tersedia secara otomatis di sesi obrolan baru tanpa perlu menentukan agen setiap kali.
Praktik terbaik
Organisasi file konteks
-
Jaga agar file konteks tetap fokus dan relevan untuk menghindari batas token
-
Gunakan nama file deskriptif yang menunjukkan tujuannya
-
Mengatur aturan dan dokumentasi dalam struktur direktori logis
-
Pertimbangkan ukuran file - file yang sangat besar dapat menggunakan token yang signifikan
Pertimbangan performa
-
Pantau penggunaan token
/context showagar tetap dalam batas -
Gunakan pola glob tertentu daripada yang terlalu luas
-
Hapus file konteks yang tidak digunakan dari konfigurasi agen
-
Pertimbangkan untuk membagi file konteks besar menjadi file yang lebih kecil dan terfokus
-
Gunakan basis pengetahuan untuk kumpulan data besar untuk menghindari konsumsi jendela konteks
Pertimbangan keamanan
-
Hindari memasukkan informasi sensitif dalam file konteks
-
Gunakan
.gitignoreuntuk mencegah komitmen yang tidak disengaja dari konteks sensitif -
Tinjau file konteks secara teratur untuk memastikan file tersebut tidak berisi informasi yang sudah ketinggalan zaman
-
Perhatikan informasi apa yang dibagikan saat menggunakan konteks dalam percakapan