மென்பொருள் கட்டமைப்பு மற்றும் DevOps ஆட்டோமேஷனுக்கான ஏஜென்டிக் AI ஐ மேம்படுத்துதல் | B4N1

மென்பொருள் கட்டமைப்பு மற்றும் DevOps ஆட்டோமேஷனுக்கான ஏஜென்டிக் AI ஐ மேம்படுத்துதல்

8 months ago · b4n1 Read time: 4 min

அறிமுகம்

செயற்கை நுண்ணறிவு (AI) மற்றும் மெஷின் லேர்னிங் (ML) ஆகியவற்றின் விரைவான பரிணாமம், ஏஜென்டிக் AI இன் வளர்ச்சிக்கு வழிவகுத்தது, இது ஒரு வகை AI ஆகும். இந்த தொழில்நுட்பம் மென்பொருள் கட்டமைப்பு மற்றும் DevOps ஆட்டோமேஷனை அணுகும் விதத்தில் புரட்சியை ஏற்படுத்தும் ஆற்றலைக் கொண்டுள்ளது. இந்த கட்டுரையில், மென்பொருள் கட்டமைப்பு, உள்கட்டமைப்பு மற்றும் DevOps செயல்முறைகளை தானியக்கமாக்குவதற்கு ஏஜென்டிக் AI, பெரிய மொழி மாதிரிகள் (LLMகள்) மற்றும் LangChain மற்றும் DSPy போன்ற ஆர்கெஸ்ட்ரேஷன் கருவிகளின் ஒருங்கிணைப்பை ஆராய்வோம்.

ஏஜென்டிக் AI என்றால் என்ன?

Agentic AI என்பது ஒரு வகை AI ஐக் குறிக்கிறது, அது சொந்தமாக நடவடிக்கைகளை எடுக்கவும் முடிவுகளை எடுக்கவும் முடியும். இது பாரம்பரிய AI அமைப்புகளுக்கு முரணானது, அவை பொதுவாக குறிப்பிட்ட பணிகளைச் செய்வதற்கும் முன் வரையறுக்கப்பட்ட விதிகளின் தொகுப்பைப் பின்பற்றுவதற்கும் வடிவமைக்கப்பட்டுள்ளன. மறுபுறம், ஏஜென்டிக் AI அமைப்புகள் மிகவும் தன்னாட்சி மற்றும் தகவமைப்புக்கு வடிவமைக்கப்பட்டுள்ளன, இது அவர்களின் சூழலில் இருந்து கற்றுக் கொள்ளவும், அவர்களின் சொந்த இலக்குகள் மற்றும் நோக்கங்களின் அடிப்படையில் முடிவுகளை எடுக்கவும் அனுமதிக்கிறது.

ஏஜென்டிக் AI இல் LLMகளின் பங்கு

பெரிய மொழி மாதிரிகள் (எல்எல்எம்கள்) என்பது ஒரு வகை AI ஆகும், அவை பரந்த அளவிலான உரை தரவுகளில் பயிற்சியளிக்கப்படுகின்றன மற்றும் மனிதனைப் போன்ற மொழியை உருவாக்கும் திறன் கொண்டவை. எல்எல்எம்கள் ஏஜென்டிக் AI அமைப்புகளின் முக்கிய அங்கமாகும், ஏனெனில் அவை மனித மொழியைப் புரிந்துகொண்டு உருவாக்கும் திறனை வழங்குகின்றன. இது ஏஜென்டிக் AI அமைப்புகளை மனிதர்கள் மற்றும் பிற அமைப்புகளுடன் மிகவும் இயல்பான மற்றும் உள்ளுணர்வு வழியில் தொடர்பு கொள்ள அனுமதிக்கிறது.

ஆர்கெஸ்ட்ரேஷன் கருவிகள்: LangChain மற்றும் DSPy

LangChain மற்றும் DSPy போன்ற ஆர்கெஸ்ட்ரேஷன் கருவிகள் வெவ்வேறு அமைப்புகள் மற்றும் கூறுகளுக்கு இடையேயான தொடர்புகளை நிர்வகிக்கவும் ஒருங்கிணைக்கவும் வடிவமைக்கப்பட்டுள்ளன. இந்த கருவிகள் பணிப்பாய்வுகளை வரையறுத்து செயல்படுத்துவதற்கான வழியை வழங்குகிறது, இதில் தரவு செயலாக்கம், மாதிரி பயிற்சி மற்றும் வரிசைப்படுத்தல் போன்ற பணிகள் அடங்கும்.

LangChain

LangChain என்பது ஒரு திறந்த மூல ஆர்கெஸ்ட்ரேஷன் கருவியாகும், இது பணிப்பாய்வுகளை உருவாக்குவதற்கும் நிர்வகிப்பதற்கும் நெகிழ்வான மற்றும் விரிவாக்கக்கூடிய கட்டமைப்பை வழங்குகிறது. LangChain ஆனது LLMகள், தரவுத்தளங்கள் மற்றும் APIகள் உட்பட பரந்த அளவிலான அமைப்புகள் மற்றும் கூறுகளுடன் வேலை செய்ய வடிவமைக்கப்பட்டுள்ளது.

டிஎஸ்பி

DSPy என்பது பைதான் அடிப்படையிலான ஆர்கெஸ்ட்ரேஷன் கருவியாகும், இது பணிப்பாய்வுகளை வரையறுத்து செயல்படுத்த ஒரு எளிய மற்றும் உள்ளுணர்வு வழியை வழங்குகிறது. டிஎஸ்பி எல்எல்எம்கள், தரவுத்தளங்கள் மற்றும் ஏபிஐகள் உட்பட பரந்த அளவிலான அமைப்புகள் மற்றும் கூறுகளுடன் வேலை செய்ய வடிவமைக்கப்பட்டுள்ளது.

மென்பொருள் கட்டமைப்பு மற்றும் DevOps செயல்முறைகளை தானியங்குபடுத்துதல்

Agentic AI, LLMகள் மற்றும் LangChain மற்றும் DSPy போன்ற ஆர்கெஸ்ட்ரேஷன் கருவிகள் பரந்த அளவிலான மென்பொருள் கட்டமைப்பு மற்றும் DevOps செயல்முறைகளை தானியக்கமாக்க பயன்படுகிறது. சில எடுத்துக்காட்டுகள் பின்வருமாறு:

  • தானியங்கு குறியீடு மதிப்பாய்வு: ஏஜென்டிக் AI அமைப்புகள் குறியீட்டை மதிப்பாய்வு செய்யவும், பிழைகள் மற்றும் பாதுகாப்பு பாதிப்புகள் போன்ற சாத்தியமான சிக்கல்களைக் கண்டறியவும் பயன்படுத்தப்படலாம்.
  • தானியங்கி சோதனை: யூனிட் சோதனை, ஒருங்கிணைப்பு சோதனை மற்றும் எண்ட்-டு-எண்ட் சோதனை உள்ளிட்ட சோதனைகளை தானியங்குபடுத்த ஏஜென்டிக் AI அமைப்புகள் பயன்படுத்தப்படலாம்.
  • தானியங்கு வரிசைப்படுத்தல்: குறியீடு, உள்ளமைவு மற்றும் பிற ஆதாரங்களின் வரிசைப்படுத்தல் உட்பட, வரிசைப்படுத்தலை தானியக்கமாக்குவதற்கு ஏஜென்டிக் AI அமைப்புகள் பயன்படுத்தப்படலாம்.
  • தானியங்கு கண்காணிப்பு: கணினி செயல்திறன், பாதுகாப்பு மற்றும் பிற அளவீடுகளின் கண்காணிப்பு உட்பட கண்காணிப்பை தானியக்கமாக்குவதற்கு ஏஜென்டிக் AI அமைப்புகள் பயன்படுத்தப்படலாம்.

நடைமுறைச் செயலாக்கம்

இந்த பிரிவில், மென்பொருள் கட்டமைப்பு மற்றும் DevOps செயல்முறையை தானியக்கமாக்குவதற்கு LangChain மற்றும் DSPy ஐ எவ்வாறு பயன்படுத்துவது என்பதற்கான எளிய உதாரணத்தை வழங்குவோம்.

எடுத்துக்காட்டு: குறியீடு மதிப்பாய்வு தானியங்கு

இந்த எடுத்துக்காட்டில், குறியீடு மதிப்பாய்வை தானியக்கமாக்குவதற்கு LangChain மற்றும் DSPy ஐப் பயன்படுத்துவோம். பின்வரும் படிகளை உள்ளடக்கிய பணிப்பாய்வுகளை நாங்கள் வரையறுப்போம்:

  1. குறியீட்டு பகுப்பாய்வு: குறியீட்டை பகுப்பாய்வு செய்வதற்கும் சாத்தியமான சிக்கல்களை அடையாளம் காணவும் பணிப்பாய்வு LLM ஐப் பயன்படுத்தும்.
  2. குறியீட்டு மதிப்பாய்வு: குறியீட்டை மதிப்பாய்வு செய்வதற்கும் சாத்தியமான சிக்கல்களைக் கண்டறிவதற்கும் பணிப்பாய்வு ஏஜென்டிக் AI அமைப்பைப் பயன்படுத்தும்.
  3. குறியீடு வரிசைப்படுத்தல்: ஒரு உற்பத்தி சூழலுக்கு குறியீட்டை வரிசைப்படுத்த பணிப்பாய்வு ஒரு வரிசைப்படுத்தல் கருவியைப் பயன்படுத்தும்.

LangChain மற்றும் DSPy ஐப் பயன்படுத்தி இந்த பணிப்பாய்வுகளை எவ்வாறு செயல்படுத்துவது என்பதற்கான எடுத்துக்காட்டு இங்கே:

லாங்செயின் இறக்குமதி
லாங்செயின் இறக்குமதி LLM இலிருந்து

# LLM ஐ வரையறுக்கவும்
llm = LLM("text-davinci-003")

# ஏஜென்டிக் AI அமைப்பை வரையறுக்கவும்
ai_system = langchain.AgenticAI()

# பணிப்பாய்வுகளை வரையறுக்கவும்
பணிப்பாய்வு = langchain. பணிப்பாய்வு(
    படிகள்=[
        langchain.Step(
            பெயர்="குறியீடு பகுப்பாய்வு",
            func=llm.analyze_code,
            உள்ளீடுகள்={"code": "def hello_world(): print('Hello World')"},
        ),
        langchain.Step(
            பெயர்="குறியீடு மதிப்பாய்வு",
            func=ai_system.review_code,
            உள்ளீடுகள்={"code": "def hello_world(): print('Hello World')"},
        ),
        langchain.Step(
            பெயர்="குறியீடு வரிசைப்படுத்தல்",
            func=langchain.deploy_code,
            உள்ளீடுகள்={"code": "def hello_world(): print('Hello World')"},
        ),
    ]
)

# பணிப்பாய்வுகளை இயக்கவும்
workflow.execute()

இந்த குறியீடு மூன்று படிகளை உள்ளடக்கிய பணிப்பாய்வுகளை வரையறுக்கிறது: குறியீடு பகுப்பாய்வு, குறியீடு மதிப்பாய்வு மற்றும் குறியீடு வரிசைப்படுத்தல். பணிப்பாய்வு குறியீட்டை பகுப்பாய்வு செய்ய ஒரு LLM, குறியீட்டை மதிப்பாய்வு செய்ய ஒரு ஏஜென்டிக் AI அமைப்பு மற்றும் குறியீட்டை உற்பத்திச் சூழலுக்கு வரிசைப்படுத்த ஒரு வரிசைப்படுத்தல் கருவி ஆகியவற்றைப் பயன்படுத்துகிறது.

முதல் 5-10 அதிகம் பயன்படுத்தப்படும் கட்டளைகள்/துணுக்குகள்

LangChain மற்றும் DSPyக்கு அதிகம் பயன்படுத்தப்படும் 5-10 கட்டளைகள்/துணுக்குகள் இங்கே:

  1. langchain.Workflow(steps=[...]): பல படிகள் கொண்ட பணிப்பாய்வுகளை வரையறுக்கவும்.
  2. langchain.Step(name="...", func=..., inputs={...}): பணிப்பாய்வுகளில் ஒரு படியை வரையறுக்கவும்.
  3. llm.analyze_code(inputs={"code": ...}): குறியீட்டை பகுப்பாய்வு செய்ய LLM ஐப் பயன்படுத்தவும்.
  4. ai_system.review_code(inputs={"code": ...}): குறியீட்டை மதிப்பாய்வு செய்ய ஏஜென்டிக் AI அமைப்பைப் பயன்படுத்தவும்.
  5. langchain.deploy_code(inputs={"code": ...}): உற்பத்திச் சூழலுக்கு குறியீட்டை வரிசைப்படுத்தவும்.
  6. langchain.AgenticAI(): ஏஜென்டிக் AI அமைப்பின் நிகழ்வை உருவாக்கவும்.
  7. langchain.LLM(): LLM இன் நிகழ்வை உருவாக்கவும்.
  8. langchain.deploy_code(): உற்பத்திச் சூழலுக்கு குறியீட்டைப் பயன்படுத்தவும்.
  9. langchain.execute_workflow(): ஒரு பணிப்பாய்வு செயல்படுத்தவும்.
  10. langchain.get_workflow_status(): பணிப்பாய்வு நிலையைப் பெறவும்.

காட்சிப்படுத்தல்

Chart.js ஐப் பயன்படுத்தி பணிப்பாய்வுகளை எவ்வாறு காட்சிப்படுத்துவது என்பதற்கான எடுத்துக்காட்டு இங்கே:

{
  "வகை": "பார்",
  "தரவு": {
    "லேபிள்கள்": ["குறியீடு பகுப்பாய்வு", "குறியீடு மதிப்பாய்வு", "குறியீடு வரிசைப்படுத்தல்"],
    "தரவுத்தொகுப்புகள்": [
      {
        "label": "பணிப்பாய்வு படிகள்",
        "தரவு": [10, 20, 30],
        "பின்னணி நிறம்": [
          "rgba(255, 99, 132, 0.2)",
          "rgba(54, 162, 235, 0.2)",
          "rgba(255, 206, 86, 0.2)"
        ],
        "எல்லை வண்ணம்": [
          "rgba(255, 99, 132, 1)",
          "rgba(54, 162, 235, 1)",
          "rgba(255, 206, 86, 1)"
        ],
        "எல்லை அகலம்": 1
      }
    ]
  },
  "விருப்பங்கள்": {}
}

இந்தக் குறியீடு மூன்று லேபிள்களைக் கொண்ட பார் விளக்கப்படத்தை வரையறுக்கிறது: குறியீடு பகுப்பாய்வு, குறியீடு மதிப்பாய்வு மற்றும் குறியீடு வரிசைப்படுத்தல். பணிப்பாய்வு ஒவ்வொரு கட்டத்திலும் உள்ள படிகளின் எண்ணிக்கையை விளக்கப்படம் காட்டுகிறது.

முடிவு

Agentic AI, LLMகள் மற்றும் LangChain மற்றும் DSPy போன்ற ஆர்கெஸ்ட்ரேஷன் கருவிகள் நாம் மென்பொருள் கட்டமைப்பு மற்றும் DevOps ஆட்டோமேஷனை அணுகும் விதத்தில் புரட்சியை ஏற்படுத்தும் ஆற்றலைக் கொண்டுள்ளன. குறியீடு மதிப்பாய்வு, சோதனை மற்றும் வரிசைப்படுத்தல் போன்ற பணிகளை தானியக்கமாக்குவதன் மூலம், எங்கள் வளர்ச்சி செயல்முறைகளின் செயல்திறனையும் செயல்திறனையும் மேம்படுத்தலாம். இந்த கட்டுரையில், இந்த தொழில்நுட்பங்களின் ஒருங்கிணைப்பை நாங்கள் ஆராய்ந்து, மென்பொருள் கட்டமைப்பு மற்றும் DevOps செயல்முறையை தானியக்கமாக்குவதற்கு அவற்றை எவ்வாறு பயன்படுத்துவது என்பதற்கான எளிய உதாரணத்தை வழங்கியுள்ளோம்.


Have Questions?

Let's Talk

Contact me on LinkedIn