Learn more about Search Results gradio - Page 17

時間をかけて生存者を助け、機械学習を利用して競争する

2023年2月6日、トルコ南東部でマグニチュード7.7と7.6の地震が発生し、10の都市に影響を及ぼし、2月21日現在で4万2000人以上が死亡し、12万人以上が負傷しました。 地震の数時間後、プログラマーのグループが「アフェタリタ」と呼ばれるアプリケーションを展開するためのDiscordサーバーを立ち上げました。このアプリケーションは、捜索救助チームとボランティアが生存者を見つけて支援するために使用されます。このようなアプリの必要性は、生存者が自分の住所や必要なもの(救助を含む)をテキストのスクリーンショットとしてソーシャルメディアに投稿したことから生じました。一部の生存者は、自分が生きていることと救助を必要としていることを、ツイートで伝え、それにより親族が知ることができました。これらのツイートから情報を抽出する必要があり、私たちはこれらを構造化されたデータに変換するためのさまざまなアプリケーションを開発し、展開するために時間との競争をしました。 Discordサーバーに招待されたとき、私たちは(ボランティアとして)どのように運営し、何をするかについてかなりの混乱がありました。私たちは共同でモデルをトレーニングするために、モデルとデータセットのレジストリが必要でした。私たちはHugging Faceの組織アカウントを開設し、MLベースのアプリケーションを受け取り、情報を処理するためのプルリクエストを通じて共同作業しました。 他のチームのボランティアから、スクリーンショットを投稿し、スクリーンショットから情報を抽出し、それを構造化してデータベースに書き込むアプリケーションの需要があることを聞きました。私たちは、与えられた画像を取得し、まずテキストを抽出し、そのテキストから名前、電話番号、住所を抽出し、これらの情報を権限付与された当局に提供するデータベースに書き込むアプリケーションの開発を開始しました。さまざまなオープンソースのOCRツールを試した後、OCR部分には「easyocr」を使用し、このアプリケーションのインターフェースの構築には「Gradio」を使用しました。OCRからのテキスト出力は、トランスフォーマーベースのファインチューニングされたNERモデルを使用して解析されます。 アプリケーションを共同で改善するために、Hugging Face Spacesにホストし、アプリケーションを維持するためのGPUグラントを受け取りました。Hugging Face HubチームはCIボットをセットアップしてくれたので、プルリクエストがSpaceにどのように影響を与えるかを見ることができ、プルリクエストのレビュー中に役立ちました。 その後、さまざまなチャンネル(Twitter、Discordなど)からラベル付けされたコンテンツが提供されました。これには、助けを求める生存者のツイートの生データと、それらから抽出された住所と個人情報が含まれていました。私たちは、まずはHugging Face Hub上のオープンソースのNLIモデルと、クローズドソースの生成モデルエンドポイントを使用したフューショットの実験から始めました。私たちは、xlm-roberta-large-xnliとconvbert-base-turkish-mc4-cased-allnli_trというモデルを試しました。NLIモデルは特に役立ちました。候補ラベルを使用して直接推論でき、データのドリフトが発生した際にラベルを変更できるため、生成モデルはバックエンドへの応答時にラベルを作り上げる可能性があり、不一致を引き起こす可能性がありました。最初はラベル付けされたデータがなかったので、何でも動くでしょう。 最終的に、私たちは独自のモデルを微調整することにしました。1つのGPUでBERTのテキスト分類ヘッドを微調整するのに約3分かかります。このモデルをトレーニングするためのデータセットを開発するためのラベリングの取り組みがありました。モデルカードのメタデータに実験結果を記録し、後でどのモデルを展開するかを追跡するためのリーダーボードを作成しました。ベースモデルとして、bert-base-turkish-uncasedとbert-base-turkish-128k-casedを試しましたが、bert-base-turkish-casedよりも優れたパフォーマンスを発揮することがわかりました。リーダーボードはこちらでご覧いただけます。 課題とデータクラスの不均衡を考慮し、偽陰性を排除することに焦点を当て、すべてのモデルの再現率とF1スコアをベンチマークするためのスペースを作成しました。これには、関連するモデルリポジトリにメタデータタグdeprem-clf-v1を追加し、このタグを使用して記録されたF1スコアと再現率を自動的に取得し、モデルをランク付けしました。漏れを防ぐために別のベンチマークセットを用意し、モデルを一貫してベンチマークしました。また、各モデルをベンチマークし、展開用の各ラベルに対して最適な閾値を特定しました。 NERモデルを評価するために、データラベラーが改善された意図データセットを提供するために取り組んでいるため、クラウドソーシングの取り組みとしてNERモデルを評価するためのラベリングインターフェースを設定しました。このインターフェースでは、ArgillaとGradioを使用して、ツイートを入力し、出力を正しい/正しくない/曖昧などのフラグで示すことができます。 後で、データセットは重複を排除してさらなる実験のベンチマークに使用されました。 機械学習の別のチームは、特定のニーズを得るために生成モデル(ゲート付きAPIの背後)と連携し、テキストとして自由なテキストを使用し、各投稿に追加のコンテキストとしてテキストを渡すためにAPIエンドポイントを別のAPIとしてラップし、クラウドに展開しました。少数のショットのプロンプティングをLLMsと組み合わせて使用することで、急速に変化するデータのドリフトの存在下で細かいニーズに対応するのに役立ちます。調整する必要があるのはプロンプトだけであり、ラベル付けされたデータは必要ありません。 これらのモデルは現在、生存者にニーズを伝えるためにボランティアや救助チームがヒートマップ上のポイントを作成するために本番環境で使用されています。 Hugging Face Hubとエコシステムがなかったら、私たちはこのように迅速に協力し、プロトタイプを作成し、展開することはできませんでした。以下は住所認識および意図分類モデルのためのMLOpsパイプラインです。 このアプリケーションとその個々のコンポーネントには何十人ものボランティアがおり、短期間でこれらを提供するために寝ずに働きました。 リモートセンシングアプリケーション…

スターコーダーでコーディングアシスタントを作成する

ソフトウェア開発者であれば、おそらくGitHub CopilotやChatGPTを使用して、プログラミングのタスクを解決したことがあるでしょう。これらのタスクには、コードを別の言語に変換したり、自然言語のクエリ(「N番目のフィボナッチ数を見つけるPythonプログラムを書いてください」といったもの)から完全な実装を生成したりするものがあります。これらの独自のシステムは、その機能には感動的ですが、一般にはいくつかの欠点があります。これらには、トレーニングに使用される公開データの透明性の欠如や、ドメインやコードベースに適応することのできなさなどがあります。 幸いにも、今はいくつかの高品質なオープンソースの代替品があります!これには、SalesForceのPython用CodeGen Mono 16B、またはReplitの20のプログラミング言語でトレーニングされた3Bパラメータモデルなどがあります。 新しいオープンソースの選択肢としては、BigCodeのStarCoderがあります。80以上のプログラミング言語、GitHubの問題、Gitのコミット、Jupyterノートブックから1兆トークンを収集した16Bパラメータモデルで、これらはすべて許可されたライセンスです。エンタープライズ向けのライセンス、8,192トークンのコンテキスト長、およびマルチクエリアテンションによる高速な大規模バッチ推論を備えたStarCoderは、現在、コードベースのアプリケーションにおいて最も優れたオープンソースの選択肢です。 このブログポストでは、StarCoderをチャット用にファインチューニングして、パーソナライズされたコーディングアシスタントを作成する方法を紹介します! StarChatと呼ばれるこのアシスタントには、次のようないくつかの技術的な詳細があります。 LLMを会話エージェントのように動作させる方法。 OpenAIのChat Markup Language(ChatMLとも呼ばれる)は、人間のユーザーとAIアシスタントの間の会話メッセージに対する構造化された形式を提供します。 🤗 TransformersとDeepSpeed ZeRO-3を使用して、多様な対話のコーパスで大きなモデルをファインチューニングする方法。 最終結果の一部を見るために、以下のデモでStarChatにいくつかのプログラミングの質問をしてみてください! デモで使用されたコード、データセット、およびモデルは、以下のリンクで見つけることができます。 コード: https://github.com/bigcode-project/starcoder データセット: https://huggingface.co/datasets/HuggingFaceH4/oasst1_en モデル: https://huggingface.co/HuggingFaceH4/starchat-alpha 始める準備ができたら、まずはファインチューニングなしで言語モデルを会話エージェントに変換する方法を見てみましょう。…

単一のGPUでChatgptのようなチャットボットをROCmで実行する

はじめに ChatGPTは、OpenAIの画期的な言語モデルであり、人工知能の領域で影響力のある存在となり、様々なセクターでAIアプリケーションの多様な活用を可能にしています。その驚異的な人間のようなテキストの理解力と生成力により、ChatGPTは顧客サポートから創造的な文章作成まで、さまざまな産業を変革し、貴重な研究ツールとしても使われています。 OPT、LLAMA、Alpaca、Vicunaなど、大規模な言語モデルのオープンソース化にはさまざまな取り組みが行われていますが、その中でもVicunaはAMD GPU上でROCmを使用してVicuna 13Bモデルを実行する方法を説明します。 Vicunaとは何ですか? Vicunaは、UCバークレー、CMU、スタンフォード、UCサンディエゴのチームによって開発された13兆パラメータを持つオープンソースのチャットボットです。Vicunaは、LLAMAベースモデルを使用して、ShareGPT.comからの約70,000件のユーザー共有会話を収集し、公開APIを介してファインチューニングしました。GPT-4を参照とした初期の評価では、Vicuna-13BはOpenAI ChatGPTと比較して90%以上の品質を実現しています。 それはわずか数週間前の4月11日にGithubでリリースされました。Vicunaのデータセット、トレーニングコード、評価メトリック、トレーニングコストはすべて公開されており、一般のユーザーにとって費用対効果の高いソリューションとなっています。 Vicunaの詳細については、https://vicuna.lmsys.org をご覧ください。 なぜ量子化されたGPTモデルが必要なのですか? Vicuna-13Bモデルをfp16で実行するには、約28GBのGPU RAMが必要です。メモリの使用量をさらに減らすためには、最適化技術が必要です。最近発表された研究論文「GPTQ」では、低ビット精度を持つGPTモデルの正確な事後トレーニング量子化が提案されています。以下の図に示すように、パラメータが10Bを超えるモデルの場合、4ビットまたは3ビットのGPTQはfp16と同等の精度を実現することができます。 さらに、これらのモデルの大きなパラメータは、GPTトークン生成が計算(TFLOPsまたはTOPs)そのものよりもメモリ帯域幅(GB/s)によって制約されるため、GPTのレイテンシに深刻な影響を与えます。そのため、メモリに制約のある状況下では、量子化モデルはトークン生成のレイテンシを低下させません。GPTQの量子化の論文とGitHubリポジトリを参照してください。 この技術を活用することで、Hugging Faceからいくつかの4ビット量子化されたVicunaモデルが利用可能です。 ROCmを使用してAMD GPUでVicuna 13Bモデルを実行する AMD GPUでVicuna 13Bモデルを実行するには、AMD GPUの高速化のためのオープンソースソフトウェアプラットフォームであるROCm(Radeon…

Amazon SageMakerのHugging Face LLM推論コンテナをご紹介します

これは、オープンソースのLLM(Large Language Model)であるBLOOMをAmazon SageMakerに展開し、新しいHugging Face LLM Inference Containerを使用して推論を行う方法の例です。Open Assistantデータセットで訓練されたオープンソースのチャットLLMである12B Pythia Open Assistant Modelを展開します。 この例では以下の内容をカバーしています: 開発環境のセットアップ 新しいHugging Face LLM DLCの取得 Open Assistant 12BのAmazon SageMakerへの展開 モデルを使用して推論およびチャットを行う…

ギャラリー、図書館、アーカイブ、博物館向けのHugging Face Hub

ギャラリー、図書館、アーカイブ、博物館のためのハギングフェイスハブ ハギングフェイスハブとは何ですか? Hugging Faceは、高品質な機械学習を誰にでもアクセス可能にすることを目指しています。この目標は、広く使われているTransformersライブラリなどのオープンソースのコードライブラリを開発すること、無料のコースを提供すること、そしてHugging Faceハブを提供することなど、さまざまな方法で追求されています。 Hugging Faceハブは、人々が機械学習モデル、データセット、デモを共有しアクセスできる中央リポジトリです。ハブには19万以上の機械学習モデル、3万3000以上のデータセット、10万以上の機械学習アプリケーションとデモがホストされています。これらのモデルは、事前学習済みの言語モデル、テキスト、画像、音声分類モデル、物体検出モデル、さまざまな生成モデルなど、さまざまなタスクをカバーしています。 ハブにホストされているモデル、データセット、デモは、さまざまなドメインと言語をカバーしており、ハブを通じて利用できる範囲を拡大するための定期的なコミュニティの取り組みが行われています。このブログ記事は、ギャラリー、図書館、アーカイブ、博物館(GLAM)セクターで働く人々がハギングフェイスハブをどのように利用して貢献できるかを理解することを目的としています。 記事全体を読むか、最も関連のあるセクションにジャンプすることができます! ハブが何か分からない場合は、「ハギングフェイスハブとは何ですか?」から始めてください。 ハブで機械学習モデルを見つける方法を知りたい場合は、「ハギングフェイスハブの使用方法:ハブで関連するモデルを見つける方法」から始めてください。 ハブでGLAMデータセットを共有する方法を知りたい場合は、「ウォークスルー:GLAMデータセットをハブに追加する方法」から始めてください。 いくつかの例を見たい場合は、「ハギングフェイスハブの使用例」をチェックしてください。 ハギングフェイスハブで何を見つけることができますか? モデル Hugging Faceハブは、さまざまなタスクとドメインをカバーする機械学習モデルへのアクセスを提供しています。多くの機械学習ライブラリがHugging Faceハブとの統合を持っており、これらのライブラリを介して直接モデルを使用したりハブに共有したりすることができます。 データセット Hugging Faceハブには3万以上のデータセットがあります。これらのデータセットには、テキスト、画像、音声、マルチモーダルなど、さまざまなドメインとモダリティがカバーされています。これらのデータセットは、機械学習モデルのトレーニングや評価に価値があります。 スペース Hugging Face…

ML プレゼンテーションに PowerPoint を使うのをやめて、代わりにこれを試してみてください

悪いパワーポイントは、注意散漫な聴衆を生み出します(彼らはカメラをオフにし、複数のタスクを同時に行います)また、そのようなパワーポイントは、プレゼンターが過剰な専門用語を使用するなどの悪い習慣に甘んじることを容易にします

Langchainを使用してYouTube動画用のChatGPTを構築する

はじめに ビデオとチャットで話すことができたらどのくらい便利だろうかと考えたことがありますか?私自身、ブログを書く人間として、関連する情報を見つけるために1時間ものビデオを見ることはしばしば退屈に感じます。ビデオから有用な情報を得るために、ビデオを見ることが仕事のように感じることもあります。そこで、YouTubeビデオやその他のビデオとチャットできるチャットボットを作成しました。これは、GPT-3.5-turbo、Langchain、ChromaDB、Whisper、およびGradioによって実現されました。この記事では、Langchainを使用してYouTubeビデオのための機能的なチャットボットを構築するコードの解説を行います。 学習目標 Gradioを使用してWebインターフェースを構築する Whisperを使用してYouTubeビデオを処理し、テキストデータを抽出する テキストデータを適切に処理およびフォーマットする テキストデータの埋め込みを作成する Chroma DBを構成してデータを保存する OpenAI chatGPT、ChromaDB、および埋め込み機能を使用してLangchainの会話チェーンを初期化する 最後に、Gradioチャットボットに対するクエリとストリーミング回答を行う コーディングの部分に入る前に、使用するツールや技術に慣れておきましょう。 この記事は、Data Science Blogathonの一部として公開されました。 Langchain Langchainは、Pythonで書かれたオープンソースのツールで、Large Language Modelsデータに対応したエージェントを作成できます。では、それはどういうことでしょうか?GPT-3.5やGPT-4など、商用で利用可能な大規模言語モデルのほとんどは、トレーニングされたデータに制限があります。たとえば、ChatGPTは、すでに見た質問にしか答えることができません。2021年9月以降のものは不明です。これがLangchainが解決する核心的な問題です。Wordドキュメントや個人用PDFなど、どのデータでもLLMに送信して人間らしい回答を得ることができます。ベクトルDB、チャットモデル、および埋め込み関数などのツールにはラッパーがあり、Langchainだけを使用してAIアプリケーションを簡単に構築できます。 Langchainを使用すると、エージェント(LLMボット)を構築することもできます。これらの自律エージェントは、データ分析、SQLクエリ、基本的なコードの記述など、複数のタスクに設定できます。これらのエージェントを使用することで、低レベルな知識作業をLLMに外注することができるため、時間とエネルギーを節約できます。 このプロジェクトでは、Langchainツールを使用して、ビデオ用のチャットアプリを構築します。Langchainに関する詳細については、公式サイトを訪問してください。 Whisper Whisperは、OpenAIの別の製品です。これは、オーディオまたはビデオをテキストに変換できる汎用音声認識モデルです。多言語翻訳、音声認識、および分類を実行するために、多様なオーディオをトレーニングしています。…

スターバックスのコーヒー代で、自分自身のプライベートChatGPTモデルをトレーニングしよう

スターバックスのカップ1つ分と2時間の時間を費やすことで、自分の訓練済みのオープンソースの大規模モデルを所有することができます

Find the right Blockchain Investment for you

Web 3.0 is coming, whether buy Coins, NFTs or just Coding, everyone can participate.

Advertising with us