国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
目次
なぜLangchainを使用するのですか?
前提條件
フィットネスコーチを構(gòu)築する方法は?
コア依存関係
SerperSearchToolクラス
userdatatrackerクラス
Langchainエージェント構(gòu)成
グラデーションチャットボットロジック
ユーザーインターフェイス
ラングチェーンのユースケース
結(jié)論
ホームページ テクノロジー周辺機(jī)器 AI Langchain Fitness Coachを作成します:AIパーソナルトレーナー

Langchain Fitness Coachを作成します:AIパーソナルトレーナー

Jul 05, 2025 am 09:06 AM

多くの個(gè)人が情熱を持ってジムを訪れ、フィットネスの目標(biāo)を達(dá)成するための正しい道にいると信じています。しかし、結(jié)果は、食事の計(jì)畫が不十分であり、方向性の欠如によるものではありません。高価なジムスタックと一緒にパーソナルトレーナーを雇うことは必ずしもオプションではありません。そのため、このブログ投稿を作成して、Langchainのパワーを使用してフィットネスコーチを構(gòu)築する方法を紹介しました。これにより、最小限のコストで目標(biāo)に合わせてトレーニングとダイエットのアドバイスをカスタマイズできるようになりました。素晴らしい技術(shù)を取り入れて、それをあなたのフィットネスの副操縦士に変えてみましょう!

目次

  • なぜLangchainを使用するのですか?
    • 前提條件
  • フィットネスコーチを構(gòu)築する方法は?
    • コア依存関係
    • SerperSearchToolクラス
    • userdatatrackerクラス
    • Langchainエージェント構(gòu)成
    • グラデーションチャットボットロジック
    • ユーザーインターフェイス
    • ラングチェーンのユースケース
  • 結(jié)論

なぜLangchainを使用するのですか?

Langchainを使用すると、大規(guī)模な言語モデル(LLM)とツール、データソース、およびメモリを組み合わせることにより、高度なAIアプリケーションを構(gòu)築するときにさらに多くのことを行うことができます。プレーンテキストプロンプトを使用してLLMを呼び出す代わりに、関數(shù)を呼び出し、情報(bào)をクエリし、Stateとの會(huì)話を管理するエージェントを作成できます。フィットネスコーチの場合、Langchainでは、LLMインテリジェンスとカスタムロジックを組み合わせることができます。たとえば、ワークアウトの提案を作成し、進(jìn)行狀況を追跡し、健康データを取得するため、自分自身を理解することなく、より賢いインタラクティブコーチになることができます。

前提條件

Langchainを使用してフィットネスコーチを作成するには、次のことが必要です。

  • 言語モデルにアクセスするためのOpenAI APIキー
  • SerpapiサービスがWeb検索を使用するための鍵
  • Pythonの基本的な知識(shí)

それだけです、あなたは今始める準(zhǔn)備ができました。

フィットネスコーチを構(gòu)築する方法は?

このセクションでは、Langchainエージェントを使用してフィットネスコーチを作る方法を示します。前提條件に従ってすべてを準(zhǔn)備してください。ソリューションを構(gòu)築する段階的なプロセスを説明し、結(jié)果を達(dá)成する上で各ステップが果たす役割を説明します。

Fitcoach AIは、ユーザーデータを一貫して収集し、Langchainエージェントを使用してパーソナライズされたトレーニングとダイエット計(jì)畫を生成する會(huì)話型フィットネスコーチです。

コア依存関係

フィットネスエージェントの構(gòu)築に必要なすべてのライブラリをインストールするには、コマンドラインで次のコマンドを?qū)g行します。

 PIPインストールグラデーションラングチェーンOpenai SERPER-DEV Python-Doten

すべての依存関係が整ったら、タスクに関連するすべてのモジュールをインポートすることから始めます。

 OSをインポートします
Gragioをgrとしてインポートします
トレースバックをインポートします
Import DateTime
インポートリストのタイピングから、タプル、オプション

langchain_openaiからChatopenaiをインポートします
langchain.memoryからImport ConversationBufferMemoryから
langchain.agentsからIntialize_Agent、AgentTypeからインポート
langchain.toolsからBasetoolをインポートします
JSONをインポートします
リクエストをインポートします
dotenvをインポートします

#環(huán)境変數(shù)をロードします
dotenv.load_dotenv()

SerperSearchToolクラス

機(jī)能:最新のフィットネス/栄養(yǎng)情報(bào)のリアルタイムWeb検索機(jī)能を持つ機(jī)能を提供します。

主な機(jī)能:

  • Serper APIと統(tǒng)合してGoogle検索結(jié)果を取得する
  • タイトル、スニペット、URLを含む上位5つのフォーマットされた検索結(jié)果を返します
  • タイムアウト保護(hù)を備えた許容可能な障害モードがあります
  • SyncとAsyncの両方をサポートします
#----------セルパー検索ツール------------

クラスSerpersearchTool(Basetool):
    名前:str = "search_web"
    説明:STR = "リアルタイム情報(bào)をWebで検索し、構(gòu)造化された結(jié)果を返します」

    def _run(self、query:str) - > str:
        "" "Serper APIを使用してWebを検索" ""
        試す:
            api_key = os.getenv( "serper_api_key")
            api_keyではない場合:
                return "エラー:serper_api_key環(huán)境変數(shù)には見つかりません」

            url = "https://google.serper.dev/search"
            ペイロード= json.dumps({"q":query})
            ヘッダー= {
                'x-api-key':api_key、
                「コンテンツタイプ」:「アプリケーション/json」
            }

            response = requests.post(url、headers = headers、data = payload、timeout = 10)
            respons.raise_for_status()
            search_results = respons.json()

            #有機(jī)結(jié)果を抽出してフォーマットします
            結(jié)果= []
            search_resultsの「オーガニック」の場合:
                search_resultsのアイテムの場合['オーガニック'] [:5]:#トップ5の結(jié)果への制限
                    results.append({
                        「タイトル」:item.get( 'title'、 '')、
                        「リンク」:item.get( 'link'、 '')、
                        「スニペット」:item.get( 'snippet'、 '')
                    })

            #フォーマットは読みやすい方法で結(jié)果をもたらします
            結(jié)果の場合:
                formatted_results = "検索結(jié)果:\ n \ n"
                iの場合、列挙されます(結(jié)果、1):
                    formatted_results = f "{i}。{result ['title']} \ n"
                    formatted_results = f "{result ['snippet']} \ n"
                    formatted_results = f "url:{result ['link']} \ n \ n"
                formatted_resultsを返します
            それ以外:
                「検索結(jié)果が見つかりません」を返します。

        requests.exceptions.requestexception as e:
            return f "検索の実行エラー - ネットワークの問題:{str(e)}"
        eとしての例外を除く:
            return f "検索の実行エラー:{str(e)}"

    async def _arun(self、query:str) - > str:
        "" "検索の非同期版" "
        self._run(query)を返す

userdatatrackerクラス

機(jī)能:フィットネス計(jì)畫を作成する前に、必要なすべての情報(bào)を取得する

必要なデータフィールド(順番):<br><br>フィットネスの目標(biāo)(減量、筋肉の増加など)<br>年齢(範(fàn)囲10?100検証)<br>性別(男性/女性/その他)<br>重量(単位中 -  kg/lbs)<br>高さ(cmまたはフィート/インチ)<br>アクティビティレベル(5つの事前定義レベル)<br>ダイエットの好み(ベジタリアン、ビーガンなど)<br>食事制限/アレルギー<br>ワークアウトプレーフェンスと制限

主な機(jī)能:

  • フィールド検証:各入力は、カスタム検証関數(shù)で検証されます。
  • シーケンシャルフロー:誰も先にスキップできません。
  • エラー処理:無効な入力に特定のエラーメッセージを提供します。
 #----------ユーザーデータトラッカークラス--------------

クラスuserdatatracker:
    def __init __(self):
        self.data = {}
        #検証関數(shù)と質(zhì)問プロンプトで必要なフィールドを定義する
        self.required_fields = {
            'fitness_goal':{
                「質(zhì)問」:「あなたの主なフィットネスの目標(biāo)は何ですか?(例えば、減量、筋肉の獲得、一般的なフィットネス)」、
                「検証」:self._validate_fitness_goal
            }、
            '年': {
                「質(zhì)問」:「あなたは何歳ですか?(10-100の間でなければならない)」
                「検証」:self._validate_age
            }、
            '性別': {
                「質(zhì)問」:「あなたの性別は何ですか?(男性/女性/その他)」、
                「検証」:self._validate_gender
            }、
            '重さ': {
                「質(zhì)問」:「あなたの現(xiàn)在の體重は何ですか?(例えば、150ポンドまたは68 kg)」、
                「検証」:self._validate_weight
            }、
            '身長': {
                「質(zhì)問」:「あなたの身長は何ですか?(例えば、5'10 \ "または178 cm)」、
                「検証」:self._validate_height
            }、
            'Active_Level':{
                「質(zhì)問」:「あなたの活動(dòng)レベルは何ですか?(座りがちで、軽くアクティブで、適度に活動(dòng)的で、非常にアクティブで、非常に活発です)」
                「検証」:self._validate_activity_level
            }、
            'deionary_preferences':{
                「質(zhì)問」:「特定の食事に従っていますか?(例えば、ベジタリアン、ビーガン、ケト、なし)」、
                「検証」:self._validate_dietary_preferences
            }、
            'deatary_restrictions':{
                「質(zhì)問」:「食物アレルギーや食事制限はありますか?(例えば、ナッツ、乳製品、グルテン、なし)」、
                「検証」:self._validate_dietary_restrictions
            }、
            'workout_preferences':{
                「質(zhì)問」:「あなたのワークアウトの好みは何ですか?(例えば、ジム、ホームワークアウト、利用可能な機(jī)器、怪我?)」
                「検証」:self._validate_workout_preferences
            }、

        }
        self.current_step = 0

Langchainエージェント構(gòu)成

エージェントの初期化:

  • モデル:一貫性のために溫度0.3のGPT-4O-MINI。
  • メモリ:コンテキストの一貫性のためのConversationBufferMemory。
  • ツール: Web検索エージェントがリアルタイム情報(bào)を検索できるようにします。

intialize_fitcoach_agent関數(shù)は、仮想フィットネスおよび?xùn)佯B(yǎng)コーチとして機(jī)能するラングチェーンの會(huì)話エージェントであるfitcoachを構(gòu)成します。言語モデルGPT-4O-MINIに接続し、Web検索ツールによって補(bǔ)強(qiáng)される可能性があり、コンテキストの會(huì)話メモリを追跡します。エージェントは、厳しいルールベースの対話の継続性に従います。フィットネスの目標(biāo)、年齢、身體指標(biāo)、食習(xí)慣、病歴などに関するすべての重要な情報(bào)を抽出するために、ユーザーに特定の質(zhì)問を1つずつ尋ねます。あなたが知る必要があるすべてのことが収集され、確認(rèn)された後にのみ、エージェントはフィットネスやダイエット計(jì)畫を生成しないことを約束します。このようにして、エージェントは、ユーザーがエージェントに望む安全で正確でパーソナライズされた指示を許可します。必要な情報(bào)がすべて収集されると、Fitcoachはユーザーに基づいて包括的なワークアウトルーチンと食事プランを生成し、インタラクティブで魅力的なコーチングプランを提供します。

 #----------ラングチェーンエージェントセットアップ---------------

def initialize_fitcoach_agent():
    "" "エラー処理" "" "
    試す:
        #Openai APIキーを確認(rèn)してください
        openai_key = os.getenv( "openai_api_key")
        openai_keyでない場合:
            Raise ValueRerr( "Openai_api_key環(huán)境変數(shù)にはありません"))

        #正しいモデル名で言語モデルを初期化します
        LLM = Chatopenai(
            Model = "gpt-4o-mini"、
            溫度= 0.3、
            openai_api_key = openai_key
        ))

        #ツールを初期化します
        ツール= []
        試す:
            os.getenv( "serper_api_key"):
                search_tool = serpersearchtool()
                tools.append(search_tool)
                print( "?検索ツールが初期化されました")
            それ以外:
                print( "?serper_api_keyが見つかりません - 検索機(jī)能は制限されます")
        eとしての例外を除く:
            印刷(f "??検索ツールを初期化できませんでした:{e}")

        #メモリを初期化します
        メモリ= conversationbuffermemory(memory_key = "chat_history"、return_messages = true)

グラデーションチャットボットロジック

  • IS_PLAN_CONTENT :指定されたテキストに、週の日、食事名、ワークアウトの比較など、複數(shù)のキーワードをチェックすることにより、詳細(xì)なフィットネスまたは栄養(yǎng)プランがあるかどうかを判斷します。フィットネスに関する非公式の會(huì)話から計(jì)畫を分離するのに役立ちます。
  • format_plan_for_text :見出し、リスト、パラグラフを保持しながら、生のフィットネス計(jì)畫テキストをクリーンなセクションにフォーマットし、チャットや電子メールでの共有の読みやすさと適合性を向上させます。
  • chat_function :Fitcoachチャットフローを管理します。手順(ユーザーフィットネスの目標(biāo)、食事の好み)でユーザーから情報(bào)を収集し、AIエージェントにカスタムワークアウトと食事プランを作成するように呼び出し、チャットフローを途切れることなく安全に処理します。
 ----------- Gradio Chatbot Logic -------------

def is_plan_content(テキスト:str) - > bool:
    "" "テキストに詳細(xì)なコンテンツを含むフィットネス計(jì)畫が含まれているかどうかを確認(rèn)" "
    テキストまたはlen(text.strip()) = 3

注:記事のコードの一部のみを表示しました。私の完全なコードはこちらから入手できます。

ユーザーインターフェイス

ユーザーインターフェイスに関しては、StreamlitやGradioなどのソリューションを使用してシンプルに保つことができます。 Gradioを使用して、カスタムデザイン、自動(dòng)更新、および健康とフィットネスアプリケーションに合った迅速で応答性の高いインターフェイスを備えた洗練されたWebアプリを作成できるためです。ソースコードを表示するには、ここをクリックしてください。

Langchain Fitness Coach:Your AIパーソナルトレーナーを構(gòu)築します

ラングチェーンのユースケース

  • カスタマーサポートボット:カスタマーサポートの知識(shí)ベースを検索して、顧客の質(zhì)問に対する回答を見つけることができるアシスタントを作成します。
  • 検索支援チャットボット: GoogleやWikipediaなどのリアルタイムの知識(shí)のソースへの呪いマップ。
  • ドキュメントQ&A:ユーザーがPDFをアップロードし、引用で正確な回答を自動(dòng)的に取得できるようにします。
  • データ操作アシスタント:データに関連する質(zhì)問をしながら、ユーザーがスプレッドシートでデータをアップロードして検討できるようにします。
  • コンテンツ生成ツール:ブログ、電子メール、ソーシャルメディアの投稿など、コンテンツを生成します。
  • マルチエージェントシステム: AIエージェントがタスクに協(xié)力したり専門化できるシステムを作成します。

結(jié)論

それがすべて言われ、完了したとき、AIはすべての技術(shù)だけではありません。それは、私たちの日常生活を改善する力としてテクノロジーを活用する方法の內(nèi)部の仕組みについてです!體調(diào)を整えたり、よく食べたり、やる気を維持したりするかどうかにかかわらず、獨(dú)自のパーソナルフィットネスコーチをデザインすることは、AIがどのようにサポートし、動(dòng)機(jī)付けられるかの完璧な例です。そして、最良の部分は、アプリケーションの構(gòu)築を開始するためにハイテクウィザードである必要がないことです!開発用のLangchain、Openai for AI機(jī)能、スマートアプリケーションを展開するためのグラデーションなど、多くのツールがあります。フィットネスの未來と、他の多くの人生の分野は、私たちに利用可能です!

以上がLangchain Fitness Coachを作成します:AIパーソナルトレーナーの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

トップ7ノートブックルムの代替 トップ7ノートブックルムの代替 Jun 17, 2025 pm 04:32 PM

GoogleのNoteBookLMは、Gemini 2.5を搭載したスマートAIノートテイキングツールであり、ドキュメントの要約に優(yōu)れています。ただし、ソースキャップ、クラウド依存、最近の「発見」機(jī)能など、ツールの使用にはまだ制限があります。

ハリウッドは、ライセンスなしで文字をコピーすることでAI會(huì)社を訴えます ハリウッドは、ライセンスなしで文字をコピーすることでAI會(huì)社を訴えます Jun 14, 2025 am 11:16 AM

しかし、ここで危険にさらされているのは、遡及的な損害やロイヤリティの払い戻しだけではありません。 AIガバナンスおよびIP弁護(hù)士であり、Ambart Law PLLCの創(chuàng)設(shè)者であるYelena Ambartsumianによると、本當(dāng)の懸念は將來を見據(jù)えています。

あなたの會(huì)社のAIの流encyさはどのように見えますか? あなたの會(huì)社のAIの流encyさはどのように見えますか? Jun 14, 2025 am 11:24 AM

AIを使用することは、それをうまく使用することと同じではありません。多くの創(chuàng)設(shè)者が経験を通じてこれを発見しました。時(shí)間を節(jié)約する実験として始まるものは、しばしばより多くの作業(yè)を作成することになります。チームは最終的にAIに生成されたコンテンツを改訂したり、出力を検証したりすることになります

採用から利點(diǎn)まで:2025年にエンタープライズLLMを形作る10のトレンド 採用から利點(diǎn)まで:2025年にエンタープライズLLMを形作る10のトレンド Jun 20, 2025 am 11:13 AM

エンタープライズAIランドスケープを再構(gòu)築する10の説得力のある傾向があります。LLMSORGANIZATIONSへの財(cái)政的コミットメントは、LLMSへの投資を大幅に増加させており、72%が今年の支出が増加することを期待しています?,F(xiàn)在、ほぼ40%a

プロトタイプ:Space Company Voyagerの株はIPOで急上昇しています プロトタイプ:Space Company Voyagerの株はIPOで急上昇しています Jun 14, 2025 am 11:14 AM

Space CompanyのVoyager Technologiesは、水曜日のIPO中に3億8,300萬ドル近くを調(diào)達(dá)し、株式は31ドルで提供されました。同社は、政府と商業(yè)クライアントの両方に、範(fàn)囲內(nèi)の活動(dòng)を含め、さまざまなスペース関連サービスを提供しています。

ボストンダイナミクスとユニットリーは、4本足のロボットを迅速に革新しています ボストンダイナミクスとユニットリーは、4本足のロボットを迅速に革新しています Jun 14, 2025 am 11:21 AM

もちろん、私は近くにあるボストンのダイナミクスに密接に従っています。しかし、グローバルな段階では、別のロボット會(huì)社が恐ろしい存在として上昇しています。彼らの4本足のロボットはすでに現(xiàn)実の世界に展開されています、そして

Nvidiaは、DGXクラウドLeptonを備えた惑星規(guī)模のAI工場を建設(shè)したい Nvidiaは、DGXクラウドLeptonを備えた惑星規(guī)模のAI工場を建設(shè)したい Jun 14, 2025 am 11:17 AM

NvidiaはLepton AIをDGX Cloud Leptonとしてブランド変更し、2025年6月に再導(dǎo)入しました。NVIDIAが述べたように、このサービスは統(tǒng)合されたAIプラットフォームを提供し、CLOのグローバルネットワークから開発者を數(shù)萬のGPUに結(jié)びつける統(tǒng)一されたAIプラットフォームを提供します。

「物理的AI」とは何ですか? AIに現(xiàn)実の世界を理解させるためのプッシュの內(nèi)部 「物理的AI」とは何ですか? AIに現(xiàn)実の世界を理解させるためのプッシュの內(nèi)部 Jun 14, 2025 am 11:23 AM

この現(xiàn)実に加えて、AIは主にブラックボックスのままであり、エンジニアがモデルが予測不可能に振る舞う理由やそれらを修正する方法を説明するのに苦労しているという事実を追加します。

See all articles