LangChain முகவரை உருவாக்கவும் | B4N1

LangChain முகவரை உருவாக்கவும்

3 months ago · b4n1 Tiempo de lectura: 4 min

மல்டி-ஏஜென்ட் AI கட்டமைப்புகள் மற்றும் ஆர்கெஸ்ட்ரேஷன் கருவிகளுடன் சுய-குணப்படுத்தும் மென்பொருள் அமைப்புகளை உருவாக்குதல்

அறிமுகம்

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

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

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

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

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

ஆர்கெஸ்ட்ரேஷன் கருவிகள் என்றால் என்ன?

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

சுய-குணப்படுத்தும் மென்பொருள் அமைப்புகளை உருவாக்குவதற்கு ஆர்கெஸ்ட்ரேஷன் கருவிகள் அவசியம், ஏனெனில் அவை டெவலப்பர்களுக்கு மீட்பு பணிப்பாய்வுகள் மற்றும் தோல்விகளுக்கு பதிலளிக்கும் வகையில் தூண்டக்கூடிய ஆட்டோமேஷனை வரையறுக்க உதவுகிறது. எடுத்துக்காட்டாக, காப்புப்பிரதி அமைப்பின் வரிசைப்படுத்தலை தானியக்கமாக்குவதற்கு அல்லது கணினி கூறு தோல்வியடையும் போது மீட்பு நடவடிக்கையைத் தூண்டுவதற்கு ஒரு ஆர்கெஸ்ட்ரேஷன் கருவி பயன்படுத்தப்படலாம்.

LangChain மற்றும் DSPy: பல முகவர் AI கட்டமைப்புகளுக்கான ஆர்கெஸ்ட்ரேஷன் கருவிகள்

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

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

  • முகவர் மேலாண்மை: LangChain மற்றும் DSPy பல முகவர் AI அமைப்பில் முகவர்களை உருவாக்க, நிர்வகித்தல் மற்றும் தொடர்புகொள்வதற்கான APIகளை வழங்குகின்றன.
  • வொர்க்ஃப்ளோ வரையறை: LangChain மற்றும் DSPy ஆகியவை டெவலப்பர்களுக்கு சிக்கலான பணிப்பாய்வுகள் மற்றும் தோல்விகளுக்கு பதிலளிக்கும் வகையில் தூண்டப்படும் ஆட்டோமேஷனை வரையறுக்க உதவுகிறது.
  • மீட்பு நடவடிக்கைகள்: LangChain மற்றும் DSPy ஆகியவை காப்புப் பிரதி அமைப்பைப் பயன்படுத்துதல் அல்லது கணினி கூறு தோல்வியுற்றால் மீட்புச் செயலைத் தூண்டுதல் போன்ற மீட்புச் செயல்களைத் தூண்டுவதற்கான APIகளை வழங்குகின்றன.

LangChain மற்றும் DSPy மூலம் சுய-குணப்படுத்தும் அமைப்பை உருவாக்குதல்

LangChain மற்றும் DSPy இன் ஆற்றலை நிரூபிக்க, இணைய பயன்பாட்டில் உள்ள தோல்விகளைக் கண்டறிந்து பதிலளிக்கக்கூடிய எளிய சுய-குணப்படுத்தும் அமைப்பை உருவாக்குவோம். பயன்பாட்டின் செயல்திறனைக் கண்காணிக்கும் மற்றும் தோல்வி கண்டறியப்பட்டால் மீட்புச் செயலைத் தூண்டும் மல்டி-ஏஜென்ட் AI அமைப்பை உருவாக்க LangChain ஐப் பயன்படுத்துவோம்.

LangChain மற்றும் DSPy மூலம் சுய-குணப்படுத்தும் அமைப்பை எவ்வாறு உருவாக்குவது என்பதை விளக்கும் எளிய குறியீடு தொகுதி இங்கே உள்ளது:

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


முகவர் = முகவர்(
    பெயர் = "சுய-குணப்படுத்தும்-முகவர்",
    சங்கிலி=சங்கிலி(
        பெயர் = "சுய-குணப்படுத்தும்-சங்கிலி",
        படிகள்=[
            {"name": "monitor", "func": monitor_performance},
            {"name": "recover", "func": recover_system},
        ],
    ),
)

# பயன்பாட்டின் செயல்திறனைக் கண்காணிக்க ஒரு செயல்பாட்டை வரையறுக்கவும்
def Monitor_performance():
    # தோல்வி கண்டறிதலை உருவகப்படுத்தவும்
    random.random() < 0.5:
        திரும்ப {"தோல்வி": உண்மை}
    வேறு:
        திரும்ப {"தோல்வி": தவறு}

# கணினியை மீட்டெடுப்பதற்கான செயல்பாட்டை வரையறுக்கவும்
def recover_system(தோல்வி):
    # மீட்பு நடவடிக்கையைத் தூண்டவும்
    தோல்வி என்றால்["தோல்வி"]:
        அச்சு ("மீட்பு நடவடிக்கையைத் தூண்டுகிறது...")
        # காப்புப்பிரதி அமைப்பை வரிசைப்படுத்தவும் அல்லது மீட்புச் செயலைத் தூண்டவும்
        #...

# ஒரு DSPy பணிப்பாய்வு உருவாக்கவும்
பணிப்பாய்வு = DSPy.Workflow(
    பெயர் = "சுய-குணப்படுத்துதல்-பணிப்பாய்வு",
    படிகள்=[
        {"name": "monitor", "func": monitor_performance},
        {"name": "recover", "func": recover_system},
    ],
)

# பணிப்பாய்வு செயல்படுத்தவும்
workflow.execute()

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

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

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

  1. langchain.Agent(): புதிய LangChain முகவரை உருவாக்குகிறது.
  2. langchain.Chain(): புதிய LangChain சங்கிலியை உருவாக்குகிறது.
  3. dspypy.Workflow(): ஒரு புதிய DSPy பணிப்பாய்வு உருவாக்குகிறது.
  4. agent.execute(): LangChain முகவரைச் செயல்படுத்துகிறது.
  5. workflow.execute(): DSPy பணிப்பாய்வுகளை செயல்படுத்துகிறது.
  6. agent.chain.steps.append({"name": "step", "func": func}): LangChain சங்கிலியில் புதிய படியைச் சேர்க்கிறது.
  7. workflow.steps.append({"name": "step", "func": func}): DSPy பணிப்பாய்வுக்கு ஒரு புதிய படி சேர்க்கிறது.
  8. agent.chain.steps.remove({"name": "step"}): LangChain சங்கிலியிலிருந்து ஒரு படியை நீக்குகிறது.
  9. workflow.steps.remove({"name": "step"}): DSPy பணிப்பாய்வு இலிருந்து ஒரு படியை நீக்குகிறது.
  10. agent.chain.steps.insert(0, {"name": "step", "func": func}): LangChain சங்கிலியின் தொடக்கத்தில் ஒரு புதிய படியைச் செருகும்.

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

Chart.js ஐப் பயன்படுத்தி LangChain மற்றும் DSPy பணிப்பாய்வுகளின் காட்சிப்படுத்தல் இங்கே:

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

இந்த காட்சிப்படுத்தல் LangChain மற்றும் DSPy பணிப்பாய்வுகளைக் காட்டுகிறது, இடதுபுறத்தில் "மானிட்டர்" படி மற்றும் வலதுபுறத்தில் "மீட்பு" படி உள்ளது. LangChain பணிப்பாய்வு சிவப்பு பட்டியால் குறிக்கப்படுகிறது, DSPy பணிப்பாய்வு நீல பட்டியால் குறிக்கப்படுகிறது.

முடிவு

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

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

நீங்கள் ஒரு மென்பொருள் பொறியாளர், DevOps பொறியாளர் அல்லது AI ஆராய்ச்சியாளராக இருந்தாலும், LangChain மற்றும் DSPy உடன் சுய-குணப்படுத்தும் மென்பொருள் அமைப்புகளை உருவாக்குவது, உற்பத்தியைத் தக்கவைக்கக்கூடிய வலுவான மற்றும் தகவமைப்பு அமைப்புகளை உருவாக்குவதற்கான சக்திவாய்ந்த அணுகுமுறையாகும்.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn