ஒரு DSPy கிளையண்டை உருவாக்கவும் | B4N1

ஒரு DSPy கிளையண்டை உருவாக்கவும்

6 months ago · b4n1 Read time: 3 min

** DSPy மற்றும் LangChain உடன் GenAI-இயக்கப்படும் மென்பொருள் மேம்பாட்டு பைப்லைன்களை ஒழுங்கமைத்தல்**

அறிமுகம்

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

DSPy மற்றும் LangChain என்றால் என்ன?

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

LangChain, மறுபுறம், உரையாடல் AI பயன்பாடுகளை உருவாக்குவதற்கான கருவிகளின் தொகுப்பை வழங்கும் பைதான் நூலகம் ஆகும். இது டெவலப்பர்களை சாட்போட்கள், குரல் உதவியாளர்கள் மற்றும் GenAI மாதிரிகளுடன் தொடர்பு கொள்ளக்கூடிய பிற உரையாடல் இடைமுகங்களை உருவாக்க உதவுகிறது.

DSPy மற்றும் LangChain ஐப் பயன்படுத்துவதன் நன்மைகள்

DSPy மற்றும் LangChain இன் ஒருங்கிணைப்பு மென்பொருள் மேம்பாட்டு பைப்லைன்களுக்கு பல நன்மைகளை வழங்குகிறது:

  1. மேம்படுத்தப்பட்ட செயல்திறன்: GenAI மாதிரிகள் மீண்டும் மீண்டும் செய்யும் பணிகளை தானியங்குபடுத்தும், உயர்நிலை பணிகளில் கவனம் செலுத்த டெவலப்பர்களை விடுவிக்கும்.
  2. மேம்படுத்தப்பட்ட துல்லியம்: GenAI மாதிரிகள் குறியீட்டில் உள்ள பிழைகள் மற்றும் முரண்பாடுகளைக் கண்டறிந்து, பிழைகள் மற்றும் குறைபாடுகளின் வாய்ப்பைக் குறைக்கும்.
  3. அதிகரித்த உற்பத்தி: GenAI மாதிரிகள் குறியீட்டை உருவாக்கலாம் மற்றும் சோதனையை தானியங்குபடுத்தலாம், மென்பொருளை உருவாக்க தேவையான நேரத்தையும் முயற்சியையும் குறைக்கலாம்.
  4. சிறந்த கூட்டுப்பணி: LangChain இன் உரையாடல் இடைமுகம் டெவலப்பர்கள் GenAI மாதிரிகளுடன் மிகவும் இயல்பான மற்றும் உள்ளுணர்வு வழியில் தொடர்பு கொள்ள உதவுகிறது.

** DSPy மற்றும் LangChain உடன் GenAI-இயக்கப்படும் மென்பொருள் மேம்பாட்டு பைப்லைன்களை செயல்படுத்துதல்**

DSPy மற்றும் LangChain உடன் GenAI-இயங்கும் மென்பொருள் மேம்பாட்டு பைப்லைனைச் செயல்படுத்த, இந்தப் படிகளைப் பின்பற்றவும்:

  1. DSPy மற்றும் LangChain ஐ நிறுவவும்: Pip ஐப் பயன்படுத்தி DSPy மற்றும் LangChain நூலகங்களை நிறுவவும்: pip install dspy langchain.
  2. DSPy ஐ உள்ளமைக்கவும்: உங்கள் GenAI மாதிரியுடன் இணைக்க DSPy ஐ உள்ளமைக்கவும். இது பொதுவாக Google Cloud AI இயங்குதளம் அல்லது Amazon SageMaker போன்ற கிளவுட் அடிப்படையிலான GenAI சேவைக்கான இணைப்பை அமைப்பதை உள்ளடக்குகிறது.
  3. LangChain பயன்பாட்டை உருவாக்கவும்: உங்கள் GenAI மாதிரியுடன் தொடர்புகொள்ள LangChain பயன்பாட்டை உருவாக்கவும். இது பொதுவாக Rasa அல்லது Dialogflow போன்ற நூலகத்தைப் பயன்படுத்தி உரையாடல் இடைமுகத்தை வரையறுப்பதை உள்ளடக்குகிறது.
  4. DSPy மற்றும் LangChain ஐ ஒருங்கிணைக்கவும்: GenAI மாதிரியை மென்பொருள் மேம்பாட்டு பைப்லைனுடன் தொடர்புகொள்வதற்கு DSPy மற்றும் LangChain ஐ ஒருங்கிணைக்கவும்.

எடுத்துக்காட்டு குறியீடு: DSPy மற்றும் LangChain ஐ ஒருங்கிணைத்தல்

DSPy மற்றும் LangChain ஐ எவ்வாறு ஒருங்கிணைப்பது என்பதை விளக்கும் ஒரு எடுத்துக்காட்டு குறியீடு தொகுதி இங்கே:

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


கிளையன்ட் = dspy.Client()

# LangChain LLAMA மாதிரியை உருவாக்கவும்
மாதிரி = LLAMA(
    api_key="உங்கள்_API_KEY",
    api_secret="YOUR_API_SECRET",
    model_name="YOUR_MODEL_NAME",
)

# GenAI மாதிரியைப் பயன்படுத்தி குறியீட்டை உருவாக்குவதற்கான செயல்பாட்டை வரையறுக்கவும்
உருவாக்க_குறியீடு (மொழி, குறியீடு):
    # GenAI மாதிரியுடன் இணைக்க DSPy ஐப் பயன்படுத்தவும்
    client.connect(மாதிரி)

    # குறியீட்டை உருவாக்க GenAI மாதிரியைப் பயன்படுத்தவும்
    generated_code = client.generate_code(மொழி, குறியீடு)

    # உருவாக்கப்பட்ட குறியீட்டை திருப்பி அனுப்பவும்
    உருவாக்கப்பட்டது_குறியீடு

# உருவாக்கப்பட்ட குறியீட்டைச் சோதிக்க ஒரு செயல்பாட்டை வரையறுக்கவும்
டெஃப் டெஸ்ட்_கோட்(குறியீடு):
    # GenAI மாதிரியுடன் இணைக்க DSPy ஐப் பயன்படுத்தவும்
    client.connect(மாதிரி)

    # குறியீட்டைச் சோதிக்க GenAI மாதிரியைப் பயன்படுத்தவும்
    test_results = client.test_code(குறியீடு)

    # சோதனை முடிவுகளை திரும்பவும்
    சோதனை_முடிவுகளைத் திரும்பப் பெறவும்

# GenAI மாதிரியைப் பயன்படுத்தி குறியீட்டை உருவாக்கவும்
மொழி = "பைத்தான்"
குறியீடு = "அச்சிடு('ஹலோ வேர்ல்ட்!')"
generated_code = generate_code(மொழி, குறியீடு)

# உருவாக்கப்பட்ட குறியீட்டை சோதிக்கவும்
test_results = test_code(generated_code)

# சோதனை முடிவுகளை அச்சிடவும்
அச்சு (சோதனை_முடிவுகள்)

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

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

  1. dspy.Client.connect(model): DSPy ஐப் பயன்படுத்தி GenAI மாதிரியுடன் இணைக்கிறது.
  2. langchain.LLAMA(api_key="YOUR_API_KEY", api_secret="YOUR_API_SECRET", model_name="YOUR_MODEL_NAME"): ​​LangChain LLAMA மாதிரியை உருவாக்குகிறது.
  3. dspy.Client.generate_code(மொழி, குறியீடு): குறியீட்டை உருவாக்க GenAI மாதிரியைப் பயன்படுத்துகிறது.
  4. dspy.Client.test_code(code): குறியீட்டைச் சோதிக்க GenAI மாதிரியைப் பயன்படுத்துகிறது.
  5. langchain.LLAMA.interact(user_input): LangChain LLAMA மாதிரியைப் பயன்படுத்தி GenAI மாதிரியுடன் தொடர்பு கொள்கிறது.
  6. dspy.Client.connect(model).generate_code(language, code): GenAI மாதிரியுடன் இணைத்து DSPyஐப் பயன்படுத்தி குறியீட்டை உருவாக்குகிறது.
  7. langchain.LLAMA.interact(user_input).generate_code(language, code): GenAI மாதிரியுடன் தொடர்புகொண்டு LangChain ஐப் பயன்படுத்தி குறியீட்டை உருவாக்குகிறது.
  8. dspy.Client.test_code(code).generate_code(language, code): குறியீட்டைச் சோதித்து DSPyஐப் பயன்படுத்தி குறியீட்டை உருவாக்குகிறது.
  9. langchain.LLAMA.interact(user_input).test_code(code): GenAI மாதிரியுடன் தொடர்பு கொள்கிறது மற்றும் LangChain ஐப் பயன்படுத்தி குறியீட்டை சோதிக்கிறது.
  10. dspy.Client.connect(model).test_code(code).generate_code(language, code): GenAI மாதிரியுடன் இணைக்கிறது, குறியீட்டைச் சோதிக்கிறது மற்றும் DSPyஐப் பயன்படுத்தி குறியீட்டை உருவாக்குகிறது.

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

Chart.js ஐப் பயன்படுத்தி GenAI-இயங்கும் மென்பொருள் மேம்பாட்டுக் குழாய்களின் காட்சிப்படுத்தல் இங்கே:

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

இந்த காட்சிப்படுத்தல், GenAI மாதிரி மற்றும் மனித டெவலப்பர் மென்பொருள் மேம்பாட்டுக் குழாய்க்கு பங்களிப்பதைக் காட்டுகிறது. GenAI மாதிரியானது குறியீடு உருவாக்கம், சோதனை மற்றும் வரிசைப்படுத்துதலுக்கு பொறுப்பாகும், அதே நேரத்தில் உருவாக்கப்பட்ட குறியீட்டை மதிப்பாய்வு செய்வதற்கும் சரிபார்ப்பதற்கும் மனித டெவலப்பர் பொறுப்பு.

முடிவு

DSPy மற்றும் LangChain இன் ஒருங்கிணைப்பு GenAI-இயங்கும் மென்பொருள் மேம்பாட்டுக் குழாய்களை ஒழுங்கமைக்க ஒரு சக்திவாய்ந்த வழியை வழங்குகிறது. GenAI மாதிரிகளின் சக்தியை மேம்படுத்துவதன் மூலம், டெவலப்பர்கள் குறியீடு உருவாக்கம், சோதனை மற்றும் வரிசைப்படுத்தல் போன்ற பணிகளை தானியங்குபடுத்தலாம், உயர்நிலை பணிகளில் கவனம் செலுத்த நேரத்தை விடுவிக்கலாம். எடுத்துக்காட்டாக குறியீடு தொகுதி மற்றும் சிறந்த 5-10 கட்டளைகள்/துணுக்குகள் DSPy மற்றும் LangChain ஐ எவ்வாறு ஒருங்கிணைத்து GenAI-இயங்கும் மென்பொருள் மேம்பாட்டு பைப்லைனை உருவாக்குவது என்பதை விளக்குகிறது. காட்சிப்படுத்தல் பிரிவு பைப்லைனின் தெளிவான மற்றும் உள்ளுணர்வு பிரதிநிதித்துவத்தை வழங்குகிறது, இது GenAI மாதிரி மற்றும் மனித உருவாக்குநரின் பங்களிப்புகளை எடுத்துக்காட்டுகிறது.


Have Questions?

Let's Talk

Contact me on LinkedIn