AIの時代に、チャットボットはテクノロジーとの対話方法に革命をもたらしました。おそらく最も影響力のある用途の1つは、ヘルスケア業界にあります。チャットボットは、迅速で正確な情報を提供し、個人がより効果的に健康を管理するのに役立ちます。この記事では、Gemini 2.0、Flask、HTML、およびBootstrapを使用して医療チャットボットを開発する方法を学びます。このプロジェクトは、正確さと速度で健康関連のクエリに答えるためのパーソナライズされたユーザーフレンドリーなカスタムプラットフォームを作成することです。
学習目標
- Gemini 2.0を使用した医療チャットボットの主要なコンポーネントとアーキテクチャ、およびヘルスケアの相互作用をどのように強化するかを理解してください。
- Gemini 2.0を医療チャットボットに統合して、患者のニーズに合わせた正確でコンテキストを意識した応答を提供する方法を学びます。
- HTMLとブートストラップの使用を調べて、レスポンシブでユーザーフレンドリーなチャットボットインターフェイスを設計します。
- パーソナライズされた医療チャットボットのセットアップと展開で実践的な経験を積む。
- チャットボット機能の検索効率を高める際のFAISSの役割を発見します。
目次
- ジェミニ2.0とは何ですか?
- Facebook AIの類似性検索
- 環境のセットアップ
- 医療チャットボット用のHTMLフロントエンドコード
- ドキュメント駆動のAI質問応答システムの構築
- 結論
- よくある質問
ジェミニ2.0とは何ですか?
2024年12月に発表されたGemini 2.0は、Google Deepmindが開発したGoogleの大規模な言語モデル(LLM)シリーズの最新のイテレーションです。マルチモーダル出力、ネイティブツールの使用、エージェント能力など、いくつかの重要な拡張機能を導入し、多様なアプリケーションの汎用性の高いAIモデルとして配置します。
Gemini 2.0の前任者であるGemini 1.5に基づいて、テキスト、画像、ビデオ、オーディオを処理および生成する機能を拡張します。より自然でインタラクティブなユーザーエクスペリエンスのために、ネイティブの画像作成と多言語テキストからスピーチの出力を追加します。
Gemini 2.0の最も優れた機能の1つは、エージェントAIです。これにより、システムはタスクを独立して計画および実行できます。 Project Astraのような実験プロジェクトは、検索やマップなどのGoogleサービスと統合してリアルタイムのコンテキスト支援を提供することにより、この機能を実証します。別の例は、オンラインショッピングなどのタスクを実行するためにWebを自律的にナビゲートするChrome拡張機能であるProject Marinerです。
ジェミニ2.0の主要な機能
- マルチモーダル出力: GEMINI 2.0プロセスと生成されたテキスト、画像、オーディオ、ビデオを含む、より自然でコンテキストが豊富な相互作用を可能にします。
- ネイティブツールの使用:モデルはさまざまなツールやプラットフォームとシームレスに統合され、さまざまなアプリケーションでそのユーティリティを強化します。
- エージェントの能力: Gemini 2.0は、最小限の人間の介入で複雑なタスクを実行できるAIエージェントを導入し、より自律的なAIシステムへの一歩をマークします。
Gemini 2.0のバージョン
Gemini 2.0はいくつかのバージョンで利用でき、それぞれが特定のユースケースに合わせて調整されています。
- Gemini 2.0 Flash Experimental:迅速なタスク実行に適した速度と効率に焦点を当てた実験モデル。
- Gemini 2.0 Pro:幅広いタスク向けに設計されており、パフォーマンスとコストのバランスを提供します。
- Gemini 2.0 Ultra:非常に複雑なタスク用に最適化されており、要求の厳しいアプリケーションに優れたパフォーマンスを提供します。
フラスコ
- Flaskは、Pythonの軽量のWebフレームワークで、スケーラブルで効率的なWebアプリケーションを構築するのに最適です。
- チャットボットでは、FlaskはGemini 2.0とのAPI統合、ルーティング、ユーザーインタラクションの管理など、バックエンド操作を処理します。
- そのシンプルさと柔軟性により、迅速な開発と統合タスクに最適です。
HTMLとブートストラップ
- HTMLは、チャットボットのインターフェイスの構造基盤を形成し、セマンティックでアクセス可能なWebデザインを確保します。
- CSSフレームワークであるBootstrapは、レスポンシブで審美的に心地よいデザインコンポーネントを提供することにより、インターフェイスを強化します。デスクトップからスマートフォンまで、デバイス全体でチャットボットがシームレスに動作するようにします。
医療チャットボットの重要な機能
- 会話インターフェイス:チャットボットは、Gemini 2.0を搭載した自然で人間のような相互作用とユーザーを引き付けます。
- ユーザーフレンドリーな設計:ブートストラップ対応のレスポンシブデザインにより、あらゆるデバイスでの使いやすさが保証されます。
- 健康クエリサポート:症状から一般的な健康アドバイスまで、さまざまな医学的質問に対処できます。
- アクセシビリティ:すべての技術的能力のユーザーに簡単に移動できるように設計されています。
Facebook AIの類似性検索
Meta(以前のFacebook)は、密なベクトルの効率的な類似性検索とクラスタリングのためのオープンソースライブラリとしてFAISSを開発しました。機械学習は一般に、特に大規模なベクター検索と最近隣接の検索を含むタスクには、FAISSを使用します。 FAISSは、高次元データの取り扱いを最適化し、推奨システム、自然言語処理、画像検索などのアプリケーションに最適です。
一言で言えば、FAISSは密なベクトルのインデックス付けを可能にし、それらを迅速に近似または正確な検索をサポートします。製品の量子化、HNSW(階層的ナビゲーション可能な小さな世界グラフ)、およびIVF(反転ファイルインデックス)技術を使用して、速度と精度のトレードオフのバランスを取ります。これらの手法は、検索結果の精度で計算の複雑さとメモリの使用量を劇的に減らします。ただし、FAISSはCPUとGPUの両方の加速をさらにサポートしているため、データセットを処理するための数百万または数十億のベクトルに適しています。
Faissの重要な強みの1つは、その汎用性です。複数のインデックス作成戦略を提供し、ユーザーが特定のユースケースに最も適切なアプローチを選択できるようにします。たとえば、フラットインデックスは正確な検索機能を提供しますが、量子化ベースのインデックスは効率を優先します。そのPythonとC APIは、幅広い開発者がアクセスできるようにし、そのモジュラー設計により、既存の機械学習パイプラインに簡単に統合できます。
Vectorデータベースの詳細については、こちらをご覧ください。
フローチャートの説明:医療チャットボットワークフロー
以下はフロー図です:
- 開始:ユーザーは、医療チャットボットのホームページ(index.html)で始まります。
- PDFをアップロードして知識ベースを構築します。
- ユーザーは、ファイルアップロード機能を介してPDFファイルをアップロードします。
- バックエンドはPDFを処理し、知識ベースを構築し、将来のクエリのためにベクターストア(vector_store.pkl)に保存します。
- 無効なファイルがアップロードされている場合、システムはエラーを処理し、有効なファイルをユーザーにプロンプトします。
-
医学的な質問をする:
- ユーザーは、質問医学的質問(/尋ね)機能を介して医学的な質問を送信します。
- ナレッジベースが存在する場合、システムは関連するドキュメントを取得します。
- ナレッジベースが存在しない場合、エラーメッセージが表示されるか、リダイレクトが開始されます。
-
応答を生成します:
- 関連するドキュメントが取得され、応答を生成するためにGeminiモデルに渡されます。
- モデルは入力を処理し、正確な医学的対応を提供します。
-
表示またはリダイレクト:
- 生成された応答は、ユーザーに表示されるか、さらなる相互作用のために適切なページにリダイレクトされます。
- 終了:ユーザーは応答を受け取り、セッションをさらにやり取りまたは終了することを選択できます。
このワークフローは、シームレスな医療チャットボットエクスペリエンスのために、Geminiモデルを使用して、スムーズなユーザーインタラクション、効率的なエラー処理、および正確な応答生成を保証します。
環境のセットアップ
必要な依存関係をインストールし、APIキーを構成し、フロントエンドをセットアップして、医療チャットボットの環境を準備します。
要件をインストールします。txt
PIPインストール-r https://raw.githubusercontent.com/gouravlohar/medical-chatbot/refs/heads/master/requirements.txt
APIキー
ここからジェミニ2.0 APIキーを入手してください。
医療チャットボット用のHTMLフロントエンドコード
このHTMLコードは、医療チャットボットアプリケーションのフロントエンドユーザーインターフェイスを形成します。ユーザーができるインタラクティブなWebページを作成します。
- PDFファイルをアップロードして、チャットボットに追加のコンテキストを提供します。
- AIベースのメディカルチャットボットと対話するためにチャットメッセージを送信します。
インターフェイスは、スタイリングにブートストラップを使用し、ユーザーのインタラクションを動的に処理するためにjQueryを使用します。チャットボットのタイピングインジケーターやシームレスなメッセージ表示などの機能が含まれています。コードはフラスコのバックエンドと統合して、ユーザー入力を処理し、AIに生成された応答を返します。
<meta name="Viewport" content="width = device-width、initial-scale = 1"> <meta name="description" content="Python FlaskアプリケーションでのGemini APIのデモンストレーション。"> <title> Medical Chatbot </title> <link rel="ショートカットアイコン" type="image/x-icon" href="%7B%7Burl_for%EF%BC%88%20'static'%E3%80%81filename%20=%20'images/iba_logo.png'%EF%BC%89%7D%7D"> <link href="https://cdn.jsdelivr.net/npm/%0A%20%20<link%20href%20=%20" https: rel="styleSheet"> <style> :根 { -primary-gradient:線形勾配(135DEG、#6E8EFB、#4834D4); -chat-bg:#111827; -Message-BG:#1F2937; -user-message-bg:#3730a3; - テキストプリマリー:#fff; - テキストセコンダリー:#9CA3AF; } 体 { font-family: 'inter'、sans-serif; バックグラウンドカラー:var( - chat-bg); 色:var( - テキストプリマリー); MIN-HEIGHT:100VH; ディスプレイ:Flex; フレックス方向:列; } .chat-container { 最大幅:1200px; マージン:0 Auto; パディング:2レム; フレックス:1; ディスプレイ:Flex; フレックス方向:列; } 。タイトル { テキストアライグ:センター; マージンボトム:1rem; フォントサイズ:2REM; font-weight:600; 色:var( - テキストプリマリー); } 。警告 { テキストアライグ:センター; マージンボトム:2REM; フォントサイズ:1rem; 色:var( - テキストセコンダリー); } .messages-container { フレックス:1; Overflow-y:auto; パディング:1REM; スクロールビハビオール:滑らか; } 。メッセージ { マージンボトム:1rem; 不透明:0; 変換:Translatey(20px); アニメーション:Fadein 0.3sがフォワードを容易にします。 } .message-content { パディング:1REM; ボーダーラジウス:1rem; 最大幅:80%; } .user-message .message-content { 背景:var( - user-message-bg); マージン左:自動; } .bot-message .message-content { 背景:var( - message-bg); } .input-container { パディング:1REM; 背景:var( - chat-bg); ボーダートップ:1PXソリッドRGBA(255、255、255、0.1); } .chat-input { 背景:var( - message-bg); 国境:なし; ボーダーラジウス:1.5rem; パディング:1REM 1.5REM; 色:var( - テキストプリマリー); 幅:calc(100%-120px); } .send-button { 背景:var( - 一次勾配); 国境:なし; ボーダーラジウス:1.5rem; パディング:1REM 2REM; 色:白; font-weight:600; 遷移:0.3秒の容易さ。 } .send-button:hover { 変換:翻訳(-2px); Box-Shadow:0 5px 15px RGBA(110、142、251、0.4); } .typing-indicator { ディスプレイ:Flex; ギャップ:0.5rem; パディング:1REM; 背景:var( - message-bg); ボーダーラジウス:1rem; 幅:フィットコンテンツ。 } .typing-dot { 幅:8px; 高さ:8px; 背景:var( - テキストセコンダリー); ボーダーラジウス:50%; アニメーション:1.4sの無限の容易さを入力します。 } .typing-dot:nth-child(2){ アニメーション遅延:0.2秒; } .typing-dot:nth-child(3){ アニメーション遅延:0.4s; } @KeyFrames Typing { 0%、 100%{ 変換:翻訳(0); } 50%{ 変換:翻訳(-10px); } } @KeyFrames Fadein { に { 不透明:1; 変換:翻訳(0); } } / *メッセージフォーマット */ .bot-message strong { 色:#818CF8; font-weight:600; } .bot-messageul { パディング左:1.5rem; マージン:0.5REM 0; } </style> <div> <div>メディカルチャットボットへようこそ</div> <div>注:これはAIチャットボットであり、間違いを犯す可能性があります。提供されている情報を確認してください。</div> {with message = get_flashed_messages()%} {%メッセージ%の場合} <div role="alert"> {{messages [0]}} </div> {%endif%} {%endwith%} <form method="post" enctype="multipart/form-data" action="/upload"> <div> <label for="pdf_files"> pdfファイルをアップロード</label> </div> <button type="submit"> pdfs </button>をアップロードします </form> <div> </div> <form method="post"> <div> <input type="text" name="promps" placeholder="メッセージ..."> <button type="submit">送信</button> </div> </form> </div> $(document).ready(function(){ $( "#chat-form")。送信(function(event){ event.preventdefault(); var question = $( "#chat-input")。val(); if(question.trim()=== "")return; usermessage = ` <div> <div> $ {質問} </div> </div> `; $( "#messages-container")。append(usermessage); $( "#chat-input")。val( ""); typingindicator = `とします <div> <div> </div> <div> </div> <div> </div> </div> `; $( "#messages-container")。append(typingindicator); $ .ajax({ タイプ:「投稿」、 url: "/ask"、 データ: { 「プロンプト」:質問 }、 成功:function(data){ $( "。typing-indicator")。remaid(); cleanedData = dataとします .replace(/\* \*(.*?)\* \*/ g、 "<strong> $ 1 </strong>") .replace(/\ n/g、 "<br>") .replace(/ - (。*?)(?= \ n | $)/g、 "
UI出力
ドキュメント駆動のAI質問応答システムの構築
いくつかのPDFをアップロードして、そのコンテンツについて即座に質問することができると想像してください。これは、ドキュメント駆動のAI質問システムの約束です。 GeminiなどのAIモデルのパワーを組み合わせることで、ドキュメントの埋め込み手法、フラスコベースのWebインターフェイスを組み合わせることで、アップロードされたドキュメントに基づいてユーザークエリを理解、処理、および応答できるインテリジェントツールを作成できます。以下に、環境のセットアップから類似性検索やリアルタイム応答などの高度な機能の実装まで、そのようなシステムを構築する手順を説明します。
ステップ1:インポートとセットアップ
Webアプリケーション用Flask、Model Integration用のGoogle Generative AI、ドキュメント処理およびベクトルストア管理用のLangchainなど、必要なライブラリとモジュールをインポートすることから始めます。
フラスコからインポートフラスコ、render_template、request、redirect、url_for、flashから google.generativeaiをgenaiとしてインポートします langchain_core.promptsからImport PromptTemplateから langchain.chainsからインポートllmchainから langchain_community.document_loadersからpypdfloaderをインポートします langchain_community.vectorstoresからImport faissから langchain_huggingfaceからインポートHuggingfacembeddingsから OSをインポートします ロギングをインポートします ピクルスをインポートします
ステップ2:Flaskアプリの初期化と構成
Flaskアプリをセットアップし、PDFSのアップロードフォルダーのようなキー設定を構成し、セッション管理の秘密キーを定義します。
app = flask(__name__) app.config ['upload_folder'] = 'uploads' app.secret_key = 'supersecretkey' os.makedirs(app.config ['upload_folder']、escow_ok = t
ステップ3:ロギングセットアップ
重要な情報とエラーをキャプチャするようにロギングを構成し、アプリの操作中にスムーズなデバッグと監視を確保します。
logging.basicconfig(level = logging.info) logger = logging.getLogger(__ name__)
ステップ4:ジェミニモデル
Gemini AIモデルを初期化し、APIキーで構成して、コンテンツを生成するモデルとの対話を可能にします。
Model = Genai.GenerativeModel('Gemini-2.0-Flash-Exp ') my_api_key_gemini = os.getenv( 'google_api_key') genai.configure(api_key = my_api_key_gemini)
ステップ5:ベクトルストアのセットアップ
ベクトルストアをセットアップして、ドキュメントの埋め込みを保存し、既に存在する場合はロードし、後で効率的なドキュメントの類似性検索を実行します。
vector_store = none #利用可能な場合は既存のベクトルストアをロードします os.path.exists( 'vector_store.pkl')の場合: open( 'vector_store.pkl'、 'rb')as f: vector_store = pickle.load(f)
- vector_store =なし:変数を初期化して、ベクトルストアを保存します。
- os.path.exists( 'vector_store.pkl'):以前に保存したVectorストアファイル(vector_store.pkl)が存在するかどうかを確認します。
存在する場合、システムはpickle.load(f)を使用してファイルからベクトルストアをロードします。
これにより、効率的な類似性検索のために、ドキュメントの埋め込み(ドキュメントの数値表現)が保存されます。
ステップ6:エラー処理(404)
404エラーのハンドラーを定義して、ユーザーが存在しないルートにアクセスしたときにユーザーをホームページにリダイレクトします。
@app.errorhandler(404) def page_not_found(e): return redirect(url_for( 'index'))
ユーザーが存在しないページ(つまり、404エラーが発生する)にアクセスすると、システムはそれらをホームページ(インデックス)にリダイレクトします。
ステップ7:メインページルート(/)
Webアプリケーションのメインページのルートを作成し、初期HTMLテンプレートをユーザーにレンダリングします。
@app.route( '/') def index(): return render_template( 'index.html')
ステップ8:ファイルアップロードルート(/アップロード)
ファイルアップロードルートを実装して、ユーザーがPDFファイルをアップロードし、処理し、ベクトルストアの埋め込みに変換できるようにします。
@app.route( '/upload'、method = ['post'])) def upload(): グローバルVector_store 試す: 'pdf_files'がrequest.filesにない場合: flash( "ファイルパーツなし") return redirect(url_for( 'index')) files = request.files.getList( 'pdf_files') 文書= [] ファイルのファイルの場合: file.fileName == ''の場合: flash( "選択されたファイルなし") return redirect(url_for( 'index')) file_path = os.path.join(app.config ['upload_folder']、file.filename) file.save(file_path) pdf_loader = pypdfloader(file_path) documents.extend(pdf_loader.load()) #Huggingfacembedingsを使用して埋め込みを作成します 埋め込み= huggingfacembeddings() vector_storeがなしである場合: #存在しない場合は新しいベクトルストアを作成します vector_store = faiss.from_documents(ドキュメント、埋め込み) それ以外: #既存のベクトルストアに新しいドキュメントを追加します vector_store.add_documents(documents) #更新されたベクトルストアを保存します fite open( 'vector_store.pkl'、 'wb')as f: pickle.dump(vector_store、f) flash( "PDFSアップロードおよび処理されました。知識ベースの準備ができました。") return redirect(url_for( 'index')) eとしての例外を除く: logger.error( "pdfs:%sの処理中にエラーが発生しました"、e) flash( "PDFSの処理中にエラーが発生しました。") return redirect(url_for( 'index'))
- このルートにより、ユーザーはPDFファイルをアップロードできます。
- request.filesオブジェクトは、 pdf_filesキーの存在についてチェックされます。
- ファイルはアップロードディレクトリに保存されます。
- PYPDFLoaderは、アップロードされた各PDFからテキストを抽出するために使用されます。
- 抽出されたテキストは、 Huggingfacembedingsを使用して埋め込みに変換されます。
- 埋め込みは、 Vector_store (FAISSを使用して作成)に保存されます。
- 更新されたvector_storeは、将来の使用のためにvector_store.pklに保存されます。
- アップロードが成功した場合、成功メッセージが表示されます。エラーがある場合、エラーメッセージが表示されます。
ステップ9:質問応答ルート(/尋ねる)
ユーザーが質問を入力でき、アプリが関連するドキュメントを取得し、コンテンツに基づいてAIを搭載した回答を生成する質問を回答するルートを実装します。
@app.route( '/ask'、method = ['post']) def ask(): グローバルVector_store vector_storeがなしである場合: 「知識ベースの準備ができていない。最初にPDFSをアップロードしてください。」 質問= request.form ['prompt'] #質問に基づいて関連文書を取得します relevant_docs = vector_store.similarity_search(question) context = "" .join([doc.page_content in relevant_docs]))) custom_prompt = f "あなたは最高の医師です。医学的関連の回答のみを提供します。コンテキスト:{コンテキスト}質問:{質問}" Response = model.generate_content(custom_prompt) response.textの場合: RESPORS.TEXTを返します それ以外: 「申し訳ありませんが、ジェミニはそれに答えたくなかったと思います!」
- このルートにより、ユーザーは質問をすることができます。
- Vectorストアの準備ができていない場合(つまり、PDFSがまだアップロードされていない)、アプリはユーザーにPDFSを最初にアップロードするように求めます。
- ユーザーの質問はフォームから抽出されます。
- アプリは類似性検索(vector_store.similarity_search)を実行して、質問に基づいて関連するドキュメントを見つけます。
- このアプリは、取得したドキュメントのコンテキストを使用してカスタムプロンプトを作成し、AIモデル(Gemini)に医療関連の回答を提供するよう指示します。
- モデルは、model.generate_content(custom_prompt)を使用して応答を生成します。
- モデルが応答を提供する場合、アプリはユーザーに返します。それ以外の場合、アプリはデフォルトのメッセージを返します。
ステップ10:フラスコアプリケーションの実行
最後に、Flaskアプリをデバッグモードで実行してWebアプリケーションを起動し、ユーザーが対話できるようにします。
__name__ == '__main__'の場合: app.run(debug = true)
ここでgithubでコードを取得します
出力
PDFリンクのテストに使用しました
プロンプト
頭痛の種類は?
PDFをアップロードした後、システムはコンテンツから直接応答を提供します。
結論
このブログでは、アップロードされたPDFSからナレッジベースを構築するために、Saiツールとテクニックを使用するフラスコベースのWebアプリケーションを作成する方法について説明しました。このアプリケーションにより、ユーザーは、Google Geminiやベクター検索メカニズムなどの生成モデルをLangchainと統合することにより、アップロードされたドキュメントのコンテンツに基づいて、医療関連の質問をし、文脈的に関連する回答を取得できます。このようなシステムでは、AIは、Web開発のための最新のツールと同盟を結び、インテリジェントなインタラクティブエクスペリエンスで情報検索を完全に自動化できます。
ファイルのアップロードから質問応答まで、このコードの基本構造を理解することにより、基本的なフラスコアプリを強力なAI機能でどのように拡張できるかがわかります。ナレッジマネジメントシステムの開発であろうと、単にチャットボットを設計するかどうかにかかわらず、同じ議論のテクノロジーが便利になり、進行中です。
キーテイクアウト
- LangchainやFaissなどのツールを使用することにより、非構造化されたPDFドキュメントを、ユーザークエリにインテリジェントに応答する強力で検索可能なナレッジベースに変換できます。
- Gemini 2.0を使用した医療チャットボットは、正確な応答のために高度なAIモデルを活用することにより、パーソナライズされたリアルタイムの医療支援を可能にします。
- GoogleのGeminiモデルを使用して、ベクトル化されたドキュメントと対話して、動的でインタラクティブなユーザーエクスペリエンスを提供することにより、コンテキストに関連する回答を生成できます。
- Flaskは、ファイルのアップロード、処理、およびユーザーインタラクションをシームレスに取り扱い、すべてをまとめる軽量フレームワークとして機能します。
- 強力なベクトル検索エンジンであるFaissは、ユーザークエリに最も関連性の高いドキュメントを見つけるのに役立ち、応答の品質と精度を高めます。
よくある質問
Q1。 Flaskアプリケーションの /ASKルートの目的は何ですか?A. /ASKルートにより、ユーザーは質問を送信できます。次に、アプリはアップロードされたPDFSを使用して関連情報を見つけ、GoogleのGemini AIモデルを使用して応答を生成します。
Q2。申請はどのようにPDFを処理しますか?A.アプリケーションでは、pypdfloaderを使用して、アップロードされたPDFからテキストを抽出します。このテキストは、Huggingfacembeddingsを使用してベクターに埋め込まれ、FAISSベクターストアに保存されて、高速類似性検索を行います。
Q3。このアプリを医療以外のドキュメントに使用できますか?A.はい、アプリをさまざまなドメインに適応させることができます。プロンプトを変更することにより、質問を回答する機能をカスタマイズして、法律、教育、技術などのさまざまな分野に一致させることができます。
Q4。ベクトルストアはどのように保存およびロードされますか?A.ベクトルストアは、Pythonのピクルスモジュールを使用して.pklファイルとして保存されます。アプリは、起動時にファイルの存在をチェックし、利用可能な場合はロードし、以前にアップロードされたドキュメントがセッション全体に持続するようにします。
Q5。このアプリをローカルマシンで実行するには何が必要ですか?A. google.generativeai、langchain、faiss、huggingfacembeddingsなどの依存関係とともに、PythonとFlaskをインストールする必要があります。 GoogleのGeminiモデルにはAPIキーも必要です。依存関係を管理するために仮想環境を設定してください。
以上がGemini 2.0、FlaskおよびVector Embeddingを使用した医療チャットボットの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Microsoft PowerBIチャートでデータ視覚化の力を活用する 今日のデータ駆動型の世界では、複雑な情報を非技術的な視聴者に効果的に伝えることが重要です。 データの視覚化は、このギャップを橋渡しし、生データを変換するi

エキスパートシステム:AIの意思決定力に深く飛び込みます 医療診断から財務計画まで、あらゆることに関する専門家のアドバイスにアクセスできることを想像してください。 それが人工知能の専門家システムの力です。 これらのシステムはプロを模倣します

まず第一に、これがすぐに起こっていることは明らかです。さまざまな企業が、現在AIによって書かれているコードの割合について話しており、これらは迅速なクリップで増加しています。すでに多くの仕事の移動があります

映画業界は、デジタルマーケティングからソーシャルメディアまで、すべてのクリエイティブセクターとともに、技術的な岐路に立っています。人工知能が視覚的なストーリーテリングのあらゆる側面を再構築し始め、エンターテイメントの風景を変え始めたとき

ISROの無料AI/MLオンラインコース:地理空間技術の革新へのゲートウェイ インド宇宙研究機関(ISRO)は、インドのリモートセンシング研究所(IIRS)を通じて、学生と専門家に素晴らしい機会を提供しています。

ローカル検索アルゴリズム:包括的なガイド 大規模なイベントを計画するには、効率的なワークロード分布が必要です。 従来のアプローチが失敗すると、ローカル検索アルゴリズムは強力なソリューションを提供します。 この記事では、Hill ClimbingとSimulについて説明します

このリリースには、GPT-4.1、GPT-4.1 MINI、およびGPT-4.1 NANOの3つの異なるモデルが含まれており、大規模な言語モデルのランドスケープ内のタスク固有の最適化への動きを示しています。これらのモデルは、ようなユーザー向けインターフェイスをすぐに置き換えません

Chip Giant Nvidiaは、月曜日に、AI Supercomputersの製造を開始すると述べました。これは、大量のデータを処理して複雑なアルゴリズムを実行できるマシンを初めて初めて米国内で実行します。発表は、トランプSI大統領の後に行われます


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

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

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
