LLM + RAG + Function Calling என்பது ஒரு AI Agent அல்ல

LLM, RAG மற்றும் function calling ஆகியவற்றைப் பயன்படுத்தும் எந்தவொரு செயலையும் (application) ஒரு AI agent என்று பலர் அழைக்கிறார்கள்.

இது தவறு.

இந்தக் கருவிகள் திறனை (capability) அதிகரிக்கின்றன. அவை தன்னாட்சியை (autonomy) வழங்குவதில்லை. தன்னாட்சி இல்லையென்றால், உங்களிடம் ஒரு agent இல்லை என்று அர்த்தம்.

மக்கள் அமைப்பின் திறன் (system capability) மற்றும் அமைப்பின் நடத்தை (system behavior) ஆகியவற்றை குழப்பிக்கொள்வதால் இந்தத் தவறு ஏற்படுகிறது.

இந்த கூறுகளின் (components) பங்குகளைப் பாருங்கள்:

  • LLM-கள் சூழலை (context) அடிப்படையாகக் கொண்டு பதில்களை உருவாக்குகின்றன. அவை ஒரு அமைப்பின் ஓட்டத்தைக் (flow) கட்டுப்படுத்துவதில்லை.
  • RAG பொருத்தமான தரவுகளைப் பெறுகிறது. இது சூழலை வழங்குகிறது, ஆனால் முடிவுகளை எடுப்பதோ அல்லது அடுத்தடுத்த படிகளைத் திட்டமிடுவதோ இல்லை.
  • Function calling ஒரு LLM-ஐச் செயல்களைக் கோர அனுமதிக்கிறது. எந்தெந்த functions உள்ளன மற்றும் அவற்றை எப்பொழுது இயக்க வேண்டும் என்பதை அமைப்புதான் (system) தீர்மானிக்கிறது.

இவை மூன்றையும் இணைத்தாலும், செயல்பாட்டு ஓட்டத்தின் (execution flow) மீதான கட்டுப்பாடு அந்த அமைப்பிடம் இருப்பதில்லை.

பெரும்பாலான அமைப்புகளில், செயலி (application) முன் வரையறுக்கப்பட்ட ஒரு வழிமுறையைப் (predefined pipeline) பின்பற்றுகிறது. குறியீடு (code) பின்வருவனவற்றைத் தீர்மானிக்கிறது:

  • எப்போது RAG-ஐப் பயன்படுத்த வேண்டும்.
  • எப்போது LLM-ஐ அழைக்க வேண்டும்.
  • எப்போது ஒரு function-ஐத் தூண்ட (trigger) வேண்டும்.
  • ஒரு பதிலை எவ்வாறு திருப்பி அனுப்ப வேண்டும்.

இது ஒரு வரையறுக்கப்பட்ட பணிப்பாய்வு (bounded workflow). மாதிரி (model) ஒரு குறிப்பிட்ட பாதையைப் பின்பற்றிவிட்டு நின்றுவிடுகிறது. அது தானாகவே திட்டமிடுவதோ அல்லது மீண்டும் மீண்டும் செயல்படுவதோ (iterate) இல்லை.

ஒரு AI agent வித்தியாசமாகச் செயல்படுகிறது. அது ஒரு நிலையான வரிசையைப் பின்பற்றுவதில்லை. செயல்முறையின் போது என்ன நடக்கிறது என்பதைப் பொறுத்து அது தனது அடுத்த கட்டத்தைத் தீர்மானிக்கிறது.

வித்தியாசம் எளிமையானது:

  • ஒரு non-agent அமைப்பு ஒரு பணிப்பாய்வைப் (workflow) பின்பற்றுகிறது.
  • ஒரு agent அமைப்பு ஒரு இலக்கை (goal) நோக்கிச் செயல்படுகிறது.

ஒரு agent அதன் நடத்தையால்தான் (behavior) வரையறுக்கப்படுகிறது, கருவிகளால் அல்ல. ஒரு agent பின்வருவனவற்றைச் செய்யக் கூடியதாக இருக்க வேண்டும்:

  • அடுத்தச் செயலைத் தேர்ந்தெடுப்பது.
  • கருவிகளைத் தேவைக்கேற்ப (dynamically) தேர்ந்தெடுப்பது.
  • ஒரு சுழற்சியில் (loop) பல படிகளைச் செயல்படுத்துவது.
  • புதிய முடிவுகளின் அடிப்படையில் தனது திட்டத்தை மாற்றுவது.
  • இலக்கை அடையும் வரை செயல்படுவது.

பொறுப்பைப் பற்றிச் சிந்தியுங்கள்.

ஒரு LLM செயலியில், அமைப்புதான் மாதிரிக்கு (model) என்ன செய்ய வேண்டும் என்று சொல்கிறது.

ஒரு agent-இல், அமைப்பு மாதிரியிடம் இலக்கைக் கூறுகிறது. அந்த இலக்கை எவ்வாறு அடைவது என்பதை மாதிரிதான் தீர்மானிக்கிறது.

RAG சூழலை மேம்படுத்துகிறது. Function calling செயல்களைச் சாத்தியமாக்குகிறது. LLM-கள் பகுத்தறிவை (reasoning) வழங்குகின்றன. இவை இவற்றுள் எதுவும் மட்டும் ஒரு agent-ஐ உருவாக்கிவிடாது.

மாதிரி தனது சொந்தச் செயல்களின் வரிசையைக் கட்டுப்படுத்தும் போது மட்டுமே ஒரு agent உருவாகிறது.

Source: https://dev.to/rohith_kn/llm-rag-function-calling-is-not-an-ai-agent-5459