Alternatif open-source untuk github copilot yang berjalan secara lokal.
? Melihatnya beraksi
Penyelesaian Kode Waktu Nyata
Mengobrol dengan AI tentang kode Anda
Prasyarat
Jika Anda belum melakukannya, silakan pilih salah satu platform berikut untuk menjalankan LLM pilihan Anda di sistem Anda secara lokal .
Ollama (sangat disarankan)
Llamafile (Eksperimental)
llama.cpp (eksperimental)
? Rekomendasi LLM
Harap dicatat bahwa Anda perlu mengonfigurasi LLM untuk penyelesaian kode dan fitur obrolan secara terpisah . Beberapa LLM populer yang kami rekomendasikan adalah sebagai berikut. Silakan pilih ukurannya (yaitu 1.3b, 7b, 13b atau 34b) dari model berdasarkan kemampuan perangkat keras Anda.
Penyelesaian kode
Mengobrol
Tautan
Deepseek-Coder: {1.3b atau 6.7b atau 33b} -base
Deepseek-Coder: {1.3b atau 6.7b atau 33b} -Instruct
Tag Ollama, rumah
codellama: {7b atau 13b atau 34b} -code
codellama: {7b atau 13b atau 34b} -Instruct
Tag Ollama, rumah
Mistral: {7b} -Instruct
Tag Ollama, rumah
Anda juga dapat memilih model dengan mengevaluasi LLM lokal Anda menggunakan Benchllama.
Instalasi cepat
Anda dapat menginstal ekstensi privy dari Visual Studio Code Marketplace atau dari Open VSX Registry.
Pasar Visual Studio Code
Buka VSX Registry
Opsi Konfigurasi
Harap atur opsi berikut di pengaturan untuk ekstensi privy.
Privy.Provider ( required ): Pilih platform yang digunakan untuk menjalankan LLM secara lokal. Ada dukungan untuk menggunakan OpenAI, tetapi ini akan memengaruhi aspek privasi dari solusi. Standarnya adalah Ollama .
Privy.ProviderUrl ( required ): URL platform yang digunakan untuk menjalankan LLM secara lokal. Standarnya adalah http://localhost:11434 .
Privy.Autocomplete.mode : Gunakan pengaturan ini untuk mengaktifkan/menonaktifkan fitur pelengkapan autokel.
Privy.Autocomplete.model : Masukkan nama model Ollama lokal yang ingin Anda gunakan untuk pelengkapan otomatis. Format yang didukung adalah Deepseek Coder, Llama & Stable Code. Kami telah memilih Deepseek-Coder: 1.3B-base karena membutuhkan sedikit VRAM. Anda dapat menyesuaikan berdasarkan pengaturan perangkat keras Anda.
Privy.Autocomplete.debouncewait : Gunakan ini untuk mengatur kesenjangan waktu sebelum memicu penyelesaian berikutnya dalam milidetik. Default adalah 300 ms.
Privy.model : Pilih LLM yang ingin Anda ajak mengobrol. Saat ini, mendukung Deepseek, Mistral dan Codellama. Jika Anda ingin menggunakan LLMS lain, pilih custom dan konfigurasikan privy.customModel yang sesuai.
Privy.customodel : Jika Anda ingin memilih model lain yang berjalan di ollama Anda, harap masukkan nama mereka.
Fitur utama
? Open source
? Privasi Pertama
Penyelesaian Kode Otomatis
? Obrolan Gaya Copilot
Percakapan berulir
Dukungan untuk penjelasan kode, tes unit, menemukan bug, mendiagnosis kesalahan dll
⌨️ Pintasan keyboard
Pintasan (Mac)
Keterangan
Alt + (untuk windows/linux) atau Cmd + (untuk mac)
Pemicu penyelesaian kode inline
Ctrl + Alt + c (untuk Windows/Linux) atau Ctrl + Cmd + c (untuk Mac)
Mulai obrolan
Tips dan Trik
Memahami konsep -konsep ini akan membantu Anda mendapatkan hasil maksimal dari rahasia.
Menjadi spesifik . Saat Anda meminta, misalnya, perubahan kode, sertakan nama konkret dan jelaskan hasil yang diinginkan. Hindari referensi yang tidak jelas.
Berikan konteks . Anda dapat memasukkan bahasa pemrograman ("dalam karat") atau konteks lain yang relevan untuk pertanyaan dasar. Anda dapat memilih cuplikan kode yang bermakna untuk penjelasan kode dan diagnosis kesalahan.
Jangan percaya jawaban secara membabi buta . Ini adalah langkah besar bagi mengetahui rahasia untuk dapat menanggapi pertanyaan Anda. Mungkin merespons dengan jawaban yang tidak akurat, terutama ketika berbicara tentang topik yang kurang terkenal atau ketika percakapan menjadi terlalu rinci.
Gunakan utas obrolan yang berbeda untuk topik yang berbeda . Thread yang lebih pendek dengan topik spesifik akan membantu merespons privat dengan lebih akurat.
? Kredit
Rubberduck AI - Proyek ini sangat terinspirasi oleh karya Rubberduck AI, dan kami berhutang budi kepada mereka untuk membangun di atasnya. Berikut ini adalah daftar kontributor untuk proyek ini dan kami menyampaikan rasa terima kasih kami yang tulus kepada mereka semua.
Lars Grammel ? ? ?
Iain Majer ?
Nicolas Carlo ?
Ratogbm ?
Lionel Okpeicha ?
Mercerk ?
Lundeen.bryan ?
Ducog ?
SBSTN87 ?
Manuel ?
Alessandro-Newzoo ?
Void & null ?
Wittydingo ?
Eva ?
Alexeylavrentev ?
lineShu123
Michael Adams ?
Restlessronin
? Kontribusi Kode
Panduan Kontribusi
Baca panduan berkontribusi kami untuk mempelajari tentang proses pengembangan kami, cara mengusulkan perbaikan bug dan perbaikan, dan cara membangun dan menguji perubahan Anda.
Masalah pertama yang bagus
Untuk membantu Anda membuat kaki Anda basah dan menjadi terbiasa dengan proses kontribusi kami, kami memiliki daftar masalah pertama yang baik yang berisi hal -hal dengan ruang lingkup yang relatif terbatas. Ini adalah tempat yang tepat untuk memulai!