AiToolGo का लोगो

अपना खुद का AI पोषण विशेषज्ञ बनाएँ: LLM, RAG, और व्यक्तिगत पोषण

गहन चर्चा
तकनीकी, फिर भी सुलभ
 0
 0
 1
यह लेख पाठकों को LLMs, फ़ंक्शन कॉलिंग और RAG जैसी उन्नत AI तकनीकों का उपयोग करके एक व्यक्तिगत AI पोषण विशेषज्ञ बनाने के लिए मार्गदर्शन करता है। यह प्रौद्योगिकी स्टैक, पर्यावरण सेटअप, और विशेष पोषण कार्यों के कार्यान्वयन का विवरण देता है, जो एक कार्यात्मक सहायक में परिणत होता है जो पोषण संबंधी प्रश्नों का उत्तर देने, BMI की गणना करने और व्यक्तिगत आहार सलाह प्रदान करने में सक्षम है।
  • मुख्य बिंदु
  • अनूठी अंतर्दृष्टि
  • व्यावहारिक अनुप्रयोग
  • प्रमुख विषय
  • प्रमुख अंतर्दृष्टि
  • लर्निंग परिणाम
  • मुख्य बिंदु

    • 1
      व्यक्तिगत पोषण सलाह के लिए AI पोषण सहायक बनाने पर व्यापक मार्गदर्शिका
    • 2
      उन्नत AI तकनीकों का एकीकरण
    • 3
      वास्तविक दुनिया के अनुप्रयोगों और उदाहरणों के साथ व्यावहारिक कार्यान्वयन
  • अनूठी अंतर्दृष्टि

    • 1
      पोषण मार्गदर्शन में सटीकता बढ़ाने के लिए LLMs, फ़ंक्शन कॉलिंग और RAG को जोड़ता है
    • 2
      यह दर्शाता है कि वेक्टर एम्बेडिंग का उपयोग करके एक खोजने योग्य पोषण ज्ञान आधार कैसे बनाया जाए
  • व्यावहारिक अनुप्रयोग

    • यह लेख एक कार्यात्मक AI पोषण विशेषज्ञ बनाने के लिए एक चरण-दर-चरण दृष्टिकोण प्रदान करता है, जिससे पोषण विज्ञान उपयोगकर्ताओं के लिए सुलभ और व्यक्तिगत हो जाता है।
  • प्रमुख विषय

    • 1
      बड़े भाषा मॉडल (LLMs)
    • 2
      AI में फ़ंक्शन कॉलिंग
    • 3
      पुनर्प्राप्ति-संवर्धित पीढ़ी (RAG)
  • प्रमुख अंतर्दृष्टि

    • 1
      व्यक्तिगत स्वास्थ्य प्रबंधन में AI का व्यावहारिक अनुप्रयोग
    • 2
      सटीक गणना के लिए पोषण कार्यों का विस्तृत कार्यान्वयन
    • 3
      पोषण डेटा के साथ उपयोगकर्ता इंटरैक्शन को बढ़ाने के लिए AI तकनीकों का अभिनव उपयोग
  • लर्निंग परिणाम

    • 1
      व्यावहारिक अनुप्रयोगों के लिए LLMs को फ़ंक्शन कॉलिंग के साथ एकीकृत करना सीखें।
    • 2
      वेक्टर एम्बेडिंग का उपयोग करके पोषण ज्ञान आधार बनाना सीखें।
    • 3
      स्वास्थ्य और पोषण के लिए व्यक्तिगत AI सहायक बनाने में अंतर्दृष्टि प्राप्त करें।
उदाहरण
ट्यूटोरियल
कोड नमूने
दृश्य
मूल सिद्धांत
उन्नत सामग्री
व्यावहारिक सुझाव
सर्वोत्तम प्रथाएँ

विषय सूची

परिचय: व्यक्तिगत AI पोषण विशेषज्ञ की आवश्यकता

आज की भागदौड़ भरी दुनिया में, संतुलित आहार बनाए रखना तेजी से मुश्किल होता जा रहा है। पोषण संबंधी परस्पर विरोधी सलाहें और फैड डाइट अक्सर लोगों को भ्रमित कर देती हैं। एक AI व्यक्तिगत पोषण विशेषज्ञ, जो 24/7 उपलब्ध हो, विशिष्ट पोषण संबंधी सवालों के जवाब दे सकता है, पोषण संबंधी आवश्यकताओं की गणना कर सकता है, और व्यक्तिगत सिफारिशें प्रदान कर सकता है। यह अब कृत्रिम बुद्धिमत्ता में प्रगति, विशेष रूप से बड़े भाषा मॉडल (LLMs) और पुनर्प्राप्ति तकनीकों के साथ संभव है। यह लेख आपको अपने स्वयं के AI व्यक्तिगत पोषण विशेषज्ञ सहायक को बनाने के लिए मार्गदर्शन करेगा, जिसमें Google के Gemini LLM को विशेष पोषण कार्यों और एक वास्तविक पोषण डेटा ज्ञान आधार के साथ जोड़ा जाएगा। सहायक भोजन पोषण के बारे में सवालों के जवाब दे सकता है, BMI की गणना कर सकता है, दैनिक कैलोरी की आवश्यकता का अनुमान लगा सकता है, मानदंडों के आधार पर भोजन की सिफारिश कर सकता है, और साक्ष्य-आधारित पोषण सलाह प्रदान कर सकता है।

प्रौद्योगिकी स्टैक को समझना: LLMs, फ़ंक्शन कॉलिंग, और RAG

हमारा AI व्यक्तिगत पोषण विशेषज्ञ सहायक तीन प्रमुख तकनीकों द्वारा संचालित है: Google के Gemini 1.5 Pro जैसे बड़े भाषा मॉडल (LLMs), फ़ंक्शन कॉलिंग, और पुनर्प्राप्ति-संवर्धित पीढ़ी (RAG)। LLMs मानव-जैसी पाठ को समझते हैं और उत्पन्न करते हैं, पोषण के बारे में प्राकृतिक भाषा प्रश्नों में उत्कृष्ट हैं। फ़ंक्शन कॉलिंग LLM को BMI या कैलोरी की आवश्यकता जैसी विशेष गणनाओं का उपयोग करने की अनुमति देता है। RAG पोषण डेटाबेस से प्रासंगिक जानकारी प्राप्त करके, तथ्यात्मक पोषण डेटा में सहायक की प्रतिक्रियाओं को आधार बनाता है। ये प्रौद्योगिकियां उपयोगकर्ता के प्रश्नों को समझने, पोषण तथ्यों को प्राप्त करने और सटीक गणनाओं को संभालने के लिए मिलकर काम करती हैं।

अपना विकास वातावरण स्थापित करना

विकास वातावरण स्थापित करने के लिए, आवश्यक पुस्तकालय स्थापित करें और API पहुँच को कॉन्फ़िगर करें। निम्नलिखित कमांड का उपयोग करें: ```bash !pip install -U -q "google-genai==1.7.0" !pip install chromadb ``` ये कमांड Google Generative AI Python SDK और वेक्टर डेटाबेस के लिए ChromaDB स्थापित करते हैं। इसके बाद, Google Gemini API तक पहुँच स्थापित करें: ```python import google.generativeai as genai import os # API कुंजी सेट करें GOOGLE_API_KEY = "YOUR_API_KEY" # अपनी वास्तविक API कुंजी से बदलें genai.configure(api_key=GOOGLE_API_KEY) ``` Google AI Studio वेबसाइट से अपनी वास्तविक Gemini API कुंजी के साथ `YOUR_API_KEY` को बदलें।

पोषण ज्ञान आधार का निर्माण

Pandas का उपयोग करके पोषण तथ्यों के एक व्यापक डेटासेट को लोड करके पोषण ज्ञान आधार बनाएँ: ```python import pandas as pd import numpy as np # पोषण डेटा लोड करें nutrition_data = pd.read_csv('/kaggle/input/nutrition-facts-for-3636-foods/nutrition_facts.csv') nutrition_data.head() ``` इस डेटासेट में 3,600 से अधिक खाद्य पदार्थों के लिए विस्तृत पोषण जानकारी है। इस डेटा को ChromaDB का उपयोग करके वेक्टर एम्बेडिंग में बदलें: ```python # पोषण डेटा के लिए एम्बेडिंग बनाएँ from chromadb.utils import embedding_functions import chromadb # ChromaDB क्लाइंट इनिशियलाइज़ करें chroma_client = chromadb.Client() # पोषण डेटा के लिए एक संग्रह बनाएँ nutrition_collection = chroma_client.create_collection( name="nutrition_facts", embedding_function=embedding_functions.DefaultEmbeddingFunction() ) # एम्बेडिंग के लिए डेटा तैयार करें for i, row in nutrition_data.iterrows(): # पोषण जानकारी के साथ एक दस्तावेज़ बनाएँ document = f"Food: {row['name']}, Calories: {row['calories']}, Protein: {row['protein_g']}g, Fat: {row['fat_g']}g, Carbs: {row['carbohydrate_g']}g" # अद्वितीय आईडी के साथ संग्रह में जोड़ें nutrition_collection.add( documents=[document], ids=[f"food_{i}"] ) ``` यह कोड एक ChromaDB संग्रह बनाता है और इसे पोषण डेटा से भरता है, जिससे सिमेंटिक खोज संभव होती है।

विशेष पोषण कार्यों को लागू करना: BMI और कैलोरी गणना

दो आवश्यक पोषण कार्यों को लागू करें: BMI गणना और दैनिक कैलोरी की आवश्यकता का अनुमान: ```python def calculate_bmi(weight_kg, height_cm): """वजन (किलोग्राम में) और ऊंचाई (सेमी में) दिए जाने पर BMI की गणना करें।""" height_m = height_cm / 100 bmi = weight_kg / (height_m * height_m) # BMI श्रेणी निर्धारित करें if bmi < 18.5: category = "Underweight" elif bmi < 25: category = "Normal weight" elif bmi < 30: category = "Overweight" else: category = "Obese" return { "bmi": round(bmi, 1), "category": category } def calculate_calorie_needs(weight_kg, height_cm, age, gender, activity_level): """हैरिस-बेडिक्ट समीकरण के आधार पर दैनिक कैलोरी की आवश्यकता की गणना करें।""" # बेसल मेटाबोलिक दर (BMR) if gender.lower() == "male": bmr = 88.362 + (13.397 * weight_kg) + (4.799 * height_cm) - (5.677 * age) else: # female bmr = 447.593 + (9.247 * weight_kg) + (3.098 * height_cm) - (4.330 * age) # गतिविधि गुणक activity_multipliers = { "sedentary": 1.2, # बहुत कम या कोई व्यायाम नहीं "light": 1.375, # हल्का व्यायाम 1-3 दिन/सप्ताह "moderate": 1.55, # मध्यम व्यायाम 3-5 दिन/सप्ताह "active": 1.725, # कठिन व्यायाम 6-7 दिन/सप्ताह "very_active": 1.9 # बहुत कठिन व्यायाम और शारीरिक नौकरी या दिन में दो बार प्रशिक्षण } # कुल दैनिक ऊर्जा व्यय (TDEE) की गणना करें multiplier = activity_multipliers.get(activity_level.lower(), 1.2) tdee = bmr * multiplier return { "bmr": round(bmr), "daily_calories": round(tdee), "weight_loss": round(tdee - 500), # 500 कैलोरी की कमी "weight_gain": round(tdee + 500) # 500 कैलोरी अधिशेष } ``` `calculate_bmi` फ़ंक्शन बॉडी मास इंडेक्स फ़ॉर्मूला लागू करता है, और `calculate_calorie_needs` फ़ंक्शन हैरिस-बेडिक्ट समीकरण का उपयोग करता है।

Gemini के साथ फ़ंक्शन कॉलिंग लागू करना

Gemini द्वारा इन कार्यों का उपयोग करने के लिए फ़ंक्शन स्कीमा परिभाषित करें: ```python nutrition_functions = [ { "name": "calculate_bmi", "description": "BMI (बॉडी मास इंडेक्स) की गणना करें और वजन श्रेणी निर्धारित करें", "parameters": { "type": "object", "properties": { "weight_kg": { "type": "number", "description": "किलोग्राम में वजन" }, "height_cm": { "type": "number", "description": "सेंटीमीटर में ऊंचाई" } }, "required": ["weight_kg", "height_cm"] } }, { "name": "calculate_calorie_needs", "description": "व्यक्तिगत आँकड़ों के आधार पर दैनिक कैलोरी की आवश्यकता की गणना करें", "parameters": { "type": "object", "properties": { "weight_kg": { "type": "number", "description": "किलोग्राम में वजन" }, "height_cm": { "type": "number", "description": "सेंटीमीटर में ऊंचाई" }, "age": { "type": "integer", "description": "वर्षों में आयु" }, "gender": { "type": "string", "description": "लिंग (पुरुष या महिला)" }, "activity_level": { "type": "string", "description": "गतिविधि स्तर (गतिहीन, हल्का, मध्यम, सक्रिय, बहुत सक्रिय)" } }, "required": ["weight_kg", "height_cm", "age", "gender", "activity_level"] } } ] ``` ये स्कीमा प्रत्येक फ़ंक्शन के लिए नाम, विवरण और पैरामीटर परिभाषित करते हैं, जिससे LLM यह निर्धारित कर सकता है कि उन्हें कब और कैसे उपयोग करना है।

सटीक पोषण डेटा के लिए RAG सिस्टम का निर्माण

पुनर्प्राप्ति-संवर्धित पीढ़ी (RAG) घटक यह सुनिश्चित करता है कि पोषण तथ्यों के बारे में प्रतिक्रियाएं डेटाबेस में आधारित हों। पोषण डेटाबेस से प्रासंगिक प्रविष्टियाँ प्राप्त करें और उन्हें LLM के लिए संदर्भ के रूप में प्रदान करें: ```python def nutrition_assistant(query): """RAG और फ़ंक्शन कॉलिंग का उपयोग करके पोषण संबंधी प्रश्न को संसाधित करें।""" # चरण 1: RAG का उपयोग करके प्रासंगिक पोषण जानकारी प्राप्त करें results = nutrition_collection.query( query_texts=[query], n_results=5 ) # प्राप्त जानकारी को प्रारूपित करें context = "\n".join(results["documents"][0]) ``` यह कोड उपयोगकर्ता के प्रश्न के लिए शीर्ष 5 सबसे प्रासंगिक प्रविष्टियों को खोजने के लिए ChromaDB के क्वेरी फ़ंक्शन का उपयोग करता है।

सब कुछ एक साथ रखना: पोषण सहायक फ़ंक्शन

सभी घटकों को मुख्य सहायक फ़ंक्शन में संयोजित करें: ```python def nutrition_assistant(query): """RAG और फ़ंक्शन कॉलिंग का उपयोग करके पोषण संबंधी प्रश्न को संसाधित करें।""" # चरण 1: RAG का उपयोग करके प्रासंगिक पोषण जानकारी प्राप्त करें results = nutrition_collection.query( query_texts=[query], n_results=5 ) # प्राप्त जानकारी को प्रारूपित करें context = "\n".join(results["documents"][0]) # चरण 2: फ़ंक्शन कॉलिंग के साथ मॉडल सेट करें model = genai.GenerativeModel( model_name="gemini-1.5-pro", generation_config={"temperature": 0.2} ) # चरण 3: संदर्भ और प्रश्न के साथ प्रॉम्प्ट बनाएँ prompt = f"""आप एक सहायक पोषण सहायक हैं। उत्तर देने में मदद के लिए निम्नलिखित पोषण जानकारी का उपयोग करें। पोषण जानकारी: {context} उपयोगकर्ता का प्रश्न: {query} यदि उपयोगकर्ता BMI या कैलोरी गणना के बारे में पूछ रहा है, तो उपयुक्त फ़ंक्शन का उपयोग करें। अन्य पोषण संबंधी प्रश्नों के लिए, संदर्भ और अपने ज्ञान के आधार पर सहायक सलाह प्रदान करें। """ # चरण 4: संभावित फ़ंक्शन कॉल के साथ प्रतिक्रिया उत्पन्न करें response = model.generate_content( prompt, tools=nutrition_functions ) # चरण 5: यदि मौजूद हो तो फ़ंक्शन कॉल संसाधित करें if hasattr(response, 'candidates') and len(response.candidates) > 0: candidate = response.candidates[0] if hasattr(candidate, 'content') and hasattr(candidate.content, 'parts'): for part in candidate.content.parts: if hasattr(part, 'function_call'): function_call = part.function_call function_name = function_call.name function_args = function_call.args # उपयुक्त फ़ंक्शन निष्पादित करें if function_name == "calculate_bmi": result = calculate_bmi( function_args["weight_kg"], function_args["height_cm"] ) elif function_name == "calculate_calorie_needs": result = calculate_calorie_needs( function_args["weight_kg"], function_args["height_cm"], function_args["age"], function_args["gender"], function_args["activity_level"] ) # फ़ंक्शन परिणाम के साथ एक नई प्रतिक्रिया उत्पन्न करें final_prompt = f"""आप एक सहायक पोषण सहायक हैं। एक उपयोगकर्ता ने पूछा: "{query}" आपने {function_name} फ़ंक्शन को कॉल किया जिसने यह परिणाम दिया: {result} कृपया एक सहायक, संवादात्मक प्रतिक्रिया प्रदान करें जो इन परिणामों की व्याख्या करती है और उचित पोषण सलाह देती है। यदि प्रासंगिक हो तो पोषण जानकारी के आधार पर विशिष्ट भोजन की सिफारिशें शामिल करें। """ final_response = model.generate_content(final_prompt) return final_response.text # यदि कोई फ़ंक्शन कॉल नहीं किया गया था, तो मूल प्रतिक्रिया लौटाएँ return response.text ``` यह फ़ंक्शन पोषण जानकारी प्राप्त करता है, Gemini मॉडल सेट करता है, एक प्रॉम्प्ट बनाता है, प्रतिक्रिया उत्पन्न करता है, और यदि आवश्यक हो तो फ़ंक्शन कॉल को संसाधित करता है।

वास्तविक दुनिया के प्रश्नों के साथ परीक्षण

वास्तविक दुनिया के प्रश्नों के साथ AI व्यक्तिगत पोषण विशेषज्ञ का परीक्षण करें: ```python test_queries = [ "एक सेब का पोषण मूल्य क्या है?", "क्या आप मेरा BMI गणना कर सकते हैं? मैं 70kg और 175cm लंबा हूँ।", "मुझे कितनी कैलोरी खानी चाहिए? मैं 30 साल का पुरुष हूँ, 80kg, 180cm, और मध्यम रूप से सक्रिय हूँ।", "मांसपेशियों के निर्माण के लिए कुछ उच्च प्रोटीन वाले खाद्य पदार्थ क्या हैं?", "क्या आप वजन घटाने के लिए भोजन योजना का सुझाव दे सकते हैं?" ] for query in test_queries: print(f"\nप्रश्न: {query}") print("-" * 50) response = nutrition_assistant(query) print(response) print("=" * 80) ``` ये उदाहरण AI व्यक्तिगत पोषण विशेषज्ञ की बहुमुखी प्रतिभा को प्रदर्शित करते हैं, तथ्यात्मक प्रश्नों को संभालते हैं, गणना करते हैं, और व्यक्तिगत सिफारिशें प्रदान करते हैं।

भविष्य के सुधार और निष्कर्ष

संभावित सुधारों में पोषण डेटाबेस का विस्तार करना, कैलोरी अनुमानों की सटीकता में सुधार करना, अधिक जटिल आहार आवश्यकताओं के लिए समर्थन जोड़ना, और पहनने योग्य उपकरणों के साथ एकीकृत करना शामिल है। AI व्यक्तिगत पोषण विशेषज्ञ सहायक व्यक्तिगत पोषण मार्गदर्शन प्रदान करने के लिए LLMs, फ़ंक्शन कॉलिंग और RAG को जोड़ता है। यह प्रणाली पोषण संबंधी प्रश्नों का उत्तर दे सकती है, BMI और कैलोरी की आवश्यकता की गणना कर सकती है, और व्यक्तिगत सिफारिशें प्रदान कर सकती है, जो व्यक्तिगत स्वास्थ्य में AI की क्षमता को प्रदर्शित करती है।

 मूल लिंक: https://www.linkedin.com/pulse/building-your-personal-ai-nutritionist-smart-meal-planner-ahmed-ali-qudjf

टिप्पणी(0)

user's avatar

      समान लर्निंग

      संबंधित टूल्स