cari
Rumahpembangunan bahagian belakangTutorial PythonMengautomasikan Ringkasan Kemas Kini Pakej Debian dengan Python dan Gemini (gemini--flash)

Automating Debian Package Update Summaries with Python and Gemini (gemini--flash)

Jika anda menggunakan distro seperti Debian dan merupakan pengguna baharu atau baru memulakan kerjaya anda sebagai sysadmin, anda mungkin sudah tahu kepentingan mengemas kini pakej menggunakan kemas kini apt. Anda juga mungkin ingin memahami perkara yang dilakukan oleh setiap pakej untuk mengetahui lebih lanjut tentang Linux. Selain itu, pentadbir sistem (sysadmins) selalunya perlu berkomunikasi atau mendokumentasikan kepada pihak berkepentingan tentang kemas kini yang mendesak atau berkaitan keselamatan.

Dalam siaran ini, saya akan menunjukkan kepada anda cara menggabungkan Python, arahan senarai apt -u dan Gemini AI untuk membuat ringkasan kemas kini pakej yang belum selesai yang boleh dibaca oleh manusia.


Matlamatnya?

  • Dapatkan semula senarai kemas kini yang belum selesai pada Debian menggunakan arahan apt list -u. Nota: Jika mahu, anda boleh mengubah suai output menggunakan sesuatu seperti:
  apt list -u | awk '{ print  }' | sed 's|/.*||'
  • Hantar senarai ini kepada Gemini AI (menggunakan perpustakaan generatif Google).
  • Gunakan AI untuk mengkategorikan dan meringkaskan kepentingan setiap kemas kini pakej.
  • Simpan keputusan dalam fail Markdown untuk memudahkan perkongsian.

Keperluan?

  • Python 3.8
  • Kunci API Google Gemini
  • Perpustakaan Diperlukan:pip pasang google-generativeai environs
  • Sistem Berasaskan Debian: Skrip ini bergantung pada arahan apt.

Kod

Berikut ialah pecahan penyelesaian merentas dua skrip:

apt_list.py

Skrip ini menjalankan apt list -u untuk mengambil kemas kini yang belum selesai, memproses output dan menggunakan fungsi gesaan untuk mendapatkan ringkasan yang dikategorikan daripada Gemini AI.

import subprocess
from utils.gemini_cfg import prompt

try:
    # Run 'apt list -u' to list upgradable packages
    result = subprocess.run(["apt", "list", "-u"], capture_output=True, text=True, check=True)
    output = result.stdout  # Get command output

    # Use the Gemini AI model to summarize the updates
    summary = prompt(output)

    # Save the AI-generated summary to a Markdown file
    with open("./gemini_result.md", "w") as file:
        file.write(summary)

    print("Summary saved to gemini_result.md")

except subprocess.CalledProcessError as e:
    print("Error while running apt list:", e)

Gemini_cfg.py

Skrip ini mengkonfigurasi API Gemini dan mentakrifkan fungsi gesaan untuk kandungan yang dijana AI.

import google.generativeai as genai
from environs import Env

# Load API key from .env file
env = Env()
env.read_env()
key = env("TOKEN")  # Replace with your environment variable key name

# Configure Gemini API
genai.configure(api_key=key)
model = genai.GenerativeModel("gemini-1.5-flash")

# Function to prompt Gemini AI for summaries
def prompt(content):
    message = (
        "You work as a sysadmin (Debian server infrastructure). "
        "You must create a list categorizing the importance in terms of security and priority, "
        "providing a brief summary for each package so that business managers can understand "
        "what each library is from this output of the `apt list -u` command: "
        f"{content}"
    )
    response = model.generate_content([message])
    return response.text
  1. Jalankan skrip apt_list.py: python apt_list.py
  2. Skrip melakukan perkara berikut:

    • Mengambil semula kemas kini pakej Debian yang belum selesai.
    • Meluluskan senarai kepada Gemini AI untuk pengkategorian dan penjelasan.
    • Menyimpan output yang dijana AI ke gemini_result.md.
  3. Buka gemini_result.md untuk melihat ringkasan kemas kini yang jelas dan dikategorikan untuk memudahkan komunikasi.


Contoh Output

Berikut ialah contoh rupa ringkasan yang dijana:

## Debian Package Update List: Priority and Security

The list below categorizes the packages available for update, considering their importance in terms of security and business operation priority. The classification is subjective and may vary depending on your company's specific context.

**Category 1: High Priority - Critical Security (update immediately)**
- **linux-generic, linux-headers-generic:** Critical kernel updates to fix security vulnerabilities.  
- **libcurl4:** Resolves potential security issues for data transfer operations.  
...

**Category 2: High Priority - Maintenance and Stability (update soon)**

* **`e2fsprogs`, `logsave`:** Packages related to ext2/ext3/ext4 file systems. Update to ensure data integrity and file system stability. **Medium-High priority.**
...

**Category 3: Medium Priority - Applications (update as needed)**

* **`code`:** Visual Studio Code editor. Update for new features and bug fixes, but not critical for system security.
* **`firefox`, `firefox-locale-en`, `firefox-locale-pt`:** Firefox browser. Updates for security fixes and new functionalities. Priority depends on Firefox usage in your infrastructure.
...

Kesimpulan

Dengan sedikit Python dan Gemini AI, anda boleh mengautomasikan dan menambah baik cara anda menyampaikan kemas kini pakej Debian. Skrip ini adalah asas yang sangat baik untuk menyepadukan AI ke dalam aliran kerja sysadmin. Siaran ini adalah untuk tujuan pendidikan, jadi berhati-hati dengan sumber Gemini API, serta pengendalian sistem anda yang selamat.

Terima kasih kerana membaca! ?

Atas ialah kandungan terperinci Mengautomasikan Ringkasan Kemas Kini Pakej Debian dengan Python dan Gemini (gemini--flash). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail TeksCara Menggunakan Python untuk Mencari Pengagihan Zipf Fail TeksMar 05, 2025 am 09:58 AM

Tutorial ini menunjukkan cara menggunakan Python untuk memproses konsep statistik undang -undang ZIPF dan menunjukkan kecekapan membaca dan menyusun fail teks besar Python semasa memproses undang -undang. Anda mungkin tertanya -tanya apa maksud pengedaran ZIPF istilah. Untuk memahami istilah ini, kita perlu menentukan undang -undang Zipf. Jangan risau, saya akan cuba memudahkan arahan. Undang -undang Zipf Undang -undang Zipf hanya bermaksud: Dalam korpus bahasa semulajadi yang besar, kata -kata yang paling kerap berlaku muncul kira -kira dua kali lebih kerap sebagai kata -kata kerap kedua, tiga kali sebagai kata -kata kerap ketiga, empat kali sebagai kata -kata kerap keempat, dan sebagainya. Mari kita lihat contoh. Jika anda melihat corpus coklat dalam bahasa Inggeris Amerika, anda akan melihat bahawa perkataan yang paling kerap adalah "th

Bagaimana saya menggunakan sup yang indah untuk menghuraikan html?Bagaimana saya menggunakan sup yang indah untuk menghuraikan html?Mar 10, 2025 pm 06:54 PM

Artikel ini menerangkan cara menggunakan sup yang indah, perpustakaan python, untuk menghuraikan html. Ia memperincikan kaedah biasa seperti mencari (), find_all (), pilih (), dan get_text () untuk pengekstrakan data, pengendalian struktur dan kesilapan HTML yang pelbagai, dan alternatif (sel

Penapisan gambar di pythonPenapisan gambar di pythonMar 03, 2025 am 09:44 AM

Berurusan dengan imej yang bising adalah masalah biasa, terutamanya dengan telefon bimbit atau foto kamera resolusi rendah. Tutorial ini meneroka teknik penapisan imej di Python menggunakan OpenCV untuk menangani isu ini. Penapisan Imej: Alat yang berkuasa Penapis Imej

Cara Bekerja Dengan Dokumen PDF Menggunakan PythonCara Bekerja Dengan Dokumen PDF Menggunakan PythonMar 02, 2025 am 09:54 AM

Fail PDF adalah popular untuk keserasian silang platform mereka, dengan kandungan dan susun atur yang konsisten merentasi sistem operasi, peranti membaca dan perisian. Walau bagaimanapun, tidak seperti Python memproses fail teks biasa, fail PDF adalah fail binari dengan struktur yang lebih kompleks dan mengandungi unsur -unsur seperti fon, warna, dan imej. Mujurlah, tidak sukar untuk memproses fail PDF dengan modul luaran Python. Artikel ini akan menggunakan modul PYPDF2 untuk menunjukkan cara membuka fail PDF, mencetak halaman, dan mengekstrak teks. Untuk penciptaan dan penyuntingan fail PDF, sila rujuk tutorial lain dari saya. Penyediaan Inti terletak pada menggunakan modul luaran PYPDF2. Pertama, pasangkannya menggunakan PIP: Pip adalah p

Cara Cache Menggunakan Redis dalam Aplikasi DjangoCara Cache Menggunakan Redis dalam Aplikasi DjangoMar 02, 2025 am 10:10 AM

Tutorial ini menunjukkan cara memanfaatkan caching redis untuk meningkatkan prestasi aplikasi python, khususnya dalam rangka kerja Django. Kami akan merangkumi pemasangan Redis, konfigurasi Django, dan perbandingan prestasi untuk menyerlahkan bene

Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch?Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch?Mar 10, 2025 pm 06:52 PM

Artikel ini membandingkan tensorflow dan pytorch untuk pembelajaran mendalam. Ia memperincikan langkah -langkah yang terlibat: penyediaan data, bangunan model, latihan, penilaian, dan penempatan. Perbezaan utama antara rangka kerja, terutamanya mengenai grap pengiraan

Cara Melaksanakan Struktur Data Anda Sendiri di PythonCara Melaksanakan Struktur Data Anda Sendiri di PythonMar 03, 2025 am 09:28 AM

Tutorial ini menunjukkan mewujudkan struktur data saluran paip tersuai di Python 3, memanfaatkan kelas dan pengendali yang berlebihan untuk fungsi yang dipertingkatkan. Fleksibiliti saluran paip terletak pada keupayaannya untuk menggunakan siri fungsi ke set data, GE

Pengenalan kepada pengaturcaraan selari dan serentak di PythonPengenalan kepada pengaturcaraan selari dan serentak di PythonMar 03, 2025 am 10:32 AM

Python, kegemaran sains dan pemprosesan data, menawarkan ekosistem yang kaya untuk pengkomputeran berprestasi tinggi. Walau bagaimanapun, pengaturcaraan selari dalam Python memberikan cabaran yang unik. Tutorial ini meneroka cabaran -cabaran ini, memberi tumpuan kepada Interprete Global

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa