StackGen konfiqurasiya faylı (example.yaml) | B4N1

StackGen konfiqurasiya faylı (example.yaml)

8 months ago · b4n1 Read time: 4 min

StackGen və LangChain ilə muxtar infrastruktur orkestrasiyası: Ekstremal DevOps avtomatlaşdırılması və muxtar infrastrukturun idarə edilməsi üçün süni intellekt agentləri və generativ modellərdən istifadə

Giriş

Bu günün sürətli rəqəmsal mənzərəsində, səmərəli və genişlənən infrastrukturun idarə edilməsinə tələb heç vaxt bu qədər yüksək olmamışdır. Ənənəvi DevOps təcrübələri çox vaxt səhvlərə, uyğunsuzluqlara və darboğazlara səbəb ola bilən əl ilə konfiqurasiya və skriptlərə əsaslanır. Bu problemləri həll etmək üçün biz infrastrukturun idarə edilməsini avtomatlaşdırmaq və optimallaşdırmaq üçün süni intellekt agentləri və generativ modellərdən istifadə edən paradiqmanın, avtonom infrastruktur orkestrinin meydana çıxmasının şahidi oluruq. Bu yazıda biz infrastrukturu idarə etməyimizdə inqilab edən iki qabaqcıl texnologiya olan StackGen və LangChain-in maraqlı dünyasını araşdıracağıq.

StackGen nədir?

StackGen açıq mənbəli, bulud-aqnostik infrastruktur orkestrasiyası platformasıdır ki, bu da öz-özünə sağalma, özünü ölçmə və özünü optimallaşdıran infrastruktur yığınlarının yaradılmasına imkan verir. Modul, genişləndirilə bilən arxitektura üzərində qurulmuş StackGen, tərtibatçılara yüksək səviyyəli, deklarativ sintaksisdən istifadə edərək infrastruktur konfiqurasiyalarını müəyyən etməyə imkan verir. Bu sintaksis daha sonra möhkəm, paylanmış mühərrik tərəfindən yerinə yetirilən icra edilə bilən infrastruktur təminatı və idarəetmə tapşırıqlarına çevrilir.

LangChain nədir?

LangChain, süni intellekt agentləri, generativ modellər və digər maşın öyrənmə komponentlərinin proqram sistemlərinə qurulması və inteqrasiyası üçün vahid interfeys təmin edən Python kitabxanasıdır. LangChain-dən istifadə etməklə tərtibatçılar verilənlərdən öyrənən, dəyişən mühitlərə uyğunlaşan və əsaslandırılmış qərarlar qəbul edən mürəkkəb süni intellektə əsaslanan proqramlar yarada bilərlər. StackGen kontekstində LangChain infrastruktur performansını təhlil edə, anomaliyaları proqnozlaşdıra və optimal sistem davranışını saxlamaq üçün düzəldici tədbirlər görə bilən AI agentlərinin inteqrasiyasına imkan verir.

StackGen və LangChain ilə muxtar infrastruktur orkestrasiyası

StackGen və LangChain-in gücünü göstərmək üçün sadə bir nümunəyə nəzər salaq. Tutaq ki, biz bulud əsaslı e-ticarət platforması qururuq ki, bu da miqyaslana bilən, yüksək performanslı infrastruktur yığını tələb edir. StackGen-dən istifadə edərək, qovşaqların sayı, nümunə növləri və şəbəkə konfiqurasiyaları daxil olmaqla, istənilən infrastruktur topologiyasını təyin edən yüksək səviyyəli konfiqurasiya təyin edə bilərik.



adı: e-ticarət platforması
təsvir: Ölçəklənən e-ticarət platforması infrastrukturu
versiya: 1.0

komponentlər:
  - adı: veb-server
    Növ: EC2
    xassələri:
      nümunə növü: t2.micro
      ami: ami-abc123
      təhlükəsizlik qrupları: [web-server-sg]
  - adı: verilənlər bazası
    növü: RDS
    xassələri:
      nümunə növü: db.t2.micro
      mühərrik: postgres
      verilənlər bazası adı: e-commerce-db
      istifadəçi adı: e-ticarət istifadəçisi
      parol: e-ticarət-parol

əlaqələr:
  - web-server -> verilənlər bazası

Bu misalda biz veb server və verilənlər bazasından ibarət sadə infrastruktur yığınını müəyyən etdik. 'komponentlər' bölməsi onların növləri, xassələri və əlaqələri daxil olmaqla fərdi komponentləri müəyyən edir. 'əlaqələr' bölməsi komponentlər arasındakı əlaqələri müəyyənləşdirir.

Sonra, infrastrukturun performansını təhlil edə və optimal sistem davranışını saxlamaq üçün düzəldici tədbirlər görə bilən AI agentini inteqrasiya etmək üçün LangChain-dən istifadə edəcəyik. CPU istifadəsinə nəzarət edən və nümunə növlərini müvafiq olaraq tənzimləyən sadə AI agenti yaradacağıq.

# LangChain AI agent kodu (ai_agent.py)
idxal langchain
langchain.agents-dən BaseAgent idxal edir

sinif ECommerceAgent (BaseAgent):
    def __init__ (self, stackgen_config):
        self.stackgen_config = stackgen_config
        self.cpu_utilization_threshold = 80

    def monitor_infrastructure(self):
        # CPU istifadəsinə nəzarət edin və nümunə növlərini tənzimləyin
        cpu_utilization = self.get_cpu_utilization()
        əgər cpu_utilization > self.cpu_utilization_threshold:
            self.adjust_instance_types()

    def tənzimləmə_nümunəsi_növləri(öz):
        # CPU istifadəsinə əsasən nümunə növlərini tənzimləyin
        instance_types = self.get_instance_types()
        misal_növlərində misal_növü üçün:
            əgər instance_type['cpu_utilization'] > self.cpu_utilization_threshold:
                instance_type['instance_type'] = 't2.large'

# AI agentini StackGen ilə inteqrasiya edin
stackgen_config = load_yaml('example.yaml')
ai_agent = ECommerceAgent (stackgen_config)
ai_agent.monitor_infrastructure()

Bu nümunədə biz CPU istifadəsinə nəzarət edən və nümunə növlərini müvafiq olaraq tənzimləyən sadə AI agenti yaratdıq. Biz AI agentlərini qurmaq və inteqrasiya etmək üçün vahid interfeysi təmin edən “langchain” kitabxanasından istifadə edərək, AI agentini StackGen ilə inteqrasiya etdik.

Ən çox istifadə olunan 5-10 əmr/parça

StackGen və LangChain üçün ən çox istifadə edilən bəzi əmrlər və fraqmentlər bunlardır:

  1. StackGen Konfiqurasiya Faylı: stackgen konfiqurasiya nümunəsi.yaml
  2. LangChain AI Agent Kodu: langchain ai_agent.py
  3. StackGen ilə AI Agentini inteqrasiya edin: langchain inteqrasiya ai_agent.py example.yaml
  4. İnfrastrukturun monitorinqi: ai_agent.monitor_infrastructure()
  5. Nümunə növlərini tənzimləyin: ai_agent.adjust_instance_types()
  6. CPU istifadəsini əldə edin: ai_agent.get_cpu_utilization()
  7. Nümunə növləri əldə edin: ai_agent.get_instance_types()
  8. YAML Konfiqurasiya Faylını Yükləyin: load_yaml('example.yaml')
  9. YAML Konfiqurasiya Faylını Saxlayın: save_yaml('example.yaml', stackgen_config)
  10. İnfrastruktur Topologiyasını Vizuallaşdırın: stackgen visualize example.yaml

Vizuallaşdırma

İnfrastruktur topologiyasını vizuallaşdırmaq üçün StackGen konfiqurasiya faylına əsaslanan qrafiki göstərmək üçün graphviz kimi kitabxanadan istifadə edə bilərik.

{
  "növ": "bar",
  "data": {
    "etiketlər": ["Veb Server", "Məlumat bazası"],
    "verilənlər dəsti": [
      {
        "label": "CPU istifadəsi",
        "data": [80, 90],
        "backgroundColor": ["rgba(255, 99, 132, 0.2)", "rgba(54, 162, 235, 0.2)"],
        "borderColor": ["rgba(255, 99, 132, 1)", "rgba(54, 162, 235, 1)"],
        "borderWidth": [1, 1]
      }
    ]
  },
  "seçimlər": {
    "başlıq": {
      "ekran": doğru,
      "text": "Komponent üzrə CPU istifadəsi"
    },
    "tərəzi": {
      "yAxes": [
        {
          "ekran": doğru,
          "scaleLabel": {
            "ekran": doğru,
            "labelString": "CPU istifadəsi (%)"
          }
        }
      ]
    }
  }
}

Bu diaqram infrastrukturun fəaliyyətinin aydın görünüşünü təmin edərək veb server və verilənlər bazası komponentlərinin CPU istifadəsini vizuallaşdırır.

Nəticə

StackGen və LangChain ilə muxtar infrastruktur orkestri özünü sağaldan, özünü ölçən və özünü optimallaşdıran infrastruktur yığınlarının yaradılmasına imkan verən güclü paradiqmadır. Tərtibatçılar süni intellekt agentləri və generativ modellərdən istifadə etməklə infrastrukturun idarə edilməsini avtomatlaşdıra və optimallaşdıra, səhvləri, uyğunsuzluqları və darboğazları azalda bilərlər. Bu yazıda biz StackGen və LangChain-in əsaslarını, o cümlədən onların arxitekturasını, konfiqurasiya fayllarını və AI agent inteqrasiyasını araşdırdıq. Biz həmçinin bu texnologiyaların gücünü göstərmək üçün praktik nümunələr və kod parçaları təqdim etdik. Səmərəli və genişlənən infrastruktur idarəçiliyinə tələb artmaqda davam etdikcə, StackGen və LangChain DevOps və infrastrukturun idarə edilməsinin gələcəyində aparıcı rol oynamağa hazırdır.


Have Questions?

Let's Talk

Contact me on LinkedIn