タグ

ブックマーク / qiita.com (2,043)

  • 翻訳: WebAPI 設計のベストプラクティス - Qiita

    これは Enchant の開発者である Vinay Sahni さんが書いた記事「Best Practices for Designing a Pragmatic RESTful API」1を、ご人の許可を得て翻訳したものです。 RESTful な WebAPI を設計しようとすると、細かなところで長考したり議論したりすると思います。また、他の API に倣ってやってはみたものの、当にそれでいいのか、どうしてそうしているのか分からない、何てことも少なくはないと思います。 この記事では、そのようなハマリどころについて Vinay さんなりの答えを提示し、簡潔かつ明快に解説してくれています。 今後 WebAPI を設計される方は、是非参考にしてみてください。 なお、誤訳がありましたら編集リクエストを頂けると幸いです。 まえがき アプリケーションの開発が進むにつれて、その WebAPI を公

    翻訳: WebAPI 設計のベストプラクティス - Qiita
  • AWS Summit New York 2024での生成AI関連の新発表まとめメモ - Qiita

    はじめに 現地時間 2024/7/10 に開催されている AWS Summit New York 2024 で多くの生成 AI 関連のアップデートが発表されました。 以下の公式ブログに随時発表が更新されていくようですが、記事では基調講演などでの発表も踏まえて日語で概要をまとめています。 Amazon Bedrock 関連 Claude 3 Haiku のファインチューニングが可能に (Preview) これまで Bedrock でファインチューニング可能なモデルは Titan や Cohere Command、Llama 2 のみだったが、Claude 3 Haiku が対象に追加された プレビュー時点ではオレゴンリージョンのみをサポート プレビュー利用を開始するにはアカウントチームまたは AWS サポートにコンタクトする必要がある ナレッジベースが追加のデータソースをサポート (pr

    AWS Summit New York 2024での生成AI関連の新発表まとめメモ - Qiita
  • Azure OpenAI APIを活用したRAG FAQシステムの高速化と安定化を実現するPTUの実践検証 - Qiita

    はじめに 生成AIブームの開始から1年以上経過し、OpenAIAPIを利用して社内の業務の効率化を目指している企業や自社サービスをリリースしている企業も増えてきました。 各所で話を聞く限り、OpenAIAPI利用で一番多いユースケースはRAG(Retrieval Augmented Generation)を利用した社内FAQの実装ですね。 RAGの実装でOpenAIAPIを利用する場合、Embeddingではtext-embedding-ada,回答生成ではChatGPT(GPT-3.5‐Turbo),GPT-4を利用することが一般的です。 基的にLLMの性能はモデルサイズに比例する関係上、高性能なモデルを使うとレスポンスが遅くなる傾向性があり、レスポンス速度と回答内容の正確性はトレードオフになります。 そして、GPT-4は非常に高性能ではあるのですが、回答生成の速度はGPT-3.

    Azure OpenAI APIを活用したRAG FAQシステムの高速化と安定化を実現するPTUの実践検証 - Qiita
  • Pumaについて深掘りしてみた - Qiita

    Railsを動かすためのアプリケーションサーバーのことで、Webサーバーの役割も兼ねることができブラウザからのリクエストを元にレスポンスも返す。Rails6はデフォルトでPumaが採用されている。 その他のRails用のアプリケーションサーバー Unicorn Mongrel Thin Rainbows など。それぞれに異なる長所があり、異なる設計思想を持っている。 Pumaの仕組み マルチスレッド 1プロセスの中で複数の処理を同時に扱うマルチスレッドで動作する。マルチスレッドによって大量のアクセスを効率的に処理することができる。 Ruby/Rackアプリケーション Puma is a simple, fast, multi-threaded, and highly parallel HTTP 1.1 server for Ruby/Rack applications. Puma は、シン

    Pumaについて深掘りしてみた - Qiita
  • GPT-4oを超えた? Claudeの最新モデル3.5が登場! AWSのBedrockで早速使ってみた - Qiita

    GPT-4oを超えた? Claudeの最新モデル3.5が登場! AWSのBedrockで早速使ってみたbedrock生成AIAnthropicclaude Claude 3.5 Sonnetが出現!? Anthropic社の生成AIモデル「Claude」の最新版、Claude 3.5 Sonnetが登場しました。 有名なOpenAI社の最新モデル「GPT-4o」を上回る性能が計測されているようです。 Claude 3.5の特徴 もともと旧世代のClaude 3には性能順に、Opus > Sonnet > Haikuの3つのモデルラインナップがありました。今回はバージョンアップ版のClaude 3.5のうち、中位モデルのSonnetのみが先行リリースされています。 (画像:Anthropic公式サイトより引用) 旧世代の最高性能だったClaude 3 Opusや、他社の最新LLMとの比較が以

    GPT-4oを超えた? Claudeの最新モデル3.5が登場! AWSのBedrockで早速使ってみた - Qiita
  • 【サーベイ論文まとめ】RAG(Retrieval-Augmented Generation) - Qiita

    『Retrieval-Augmented Generation for Large Language Models: A Survey(以下、RAG Survey論文と表記)』の内容について以下、取りまとめました。 https://arxiv.org/abs/2312.10997v5 概要 RAG研究のまとめ RAG Survey論文 Fig.1 上記では、RAGの研究が「Fine-tuning」・「Pre-training」・「Inference」の3種類に分類されます。 RAG Survey論文の構成 Survey論文の構成は『Ⅰ. Introduction』に概要が記載されているので、以下に簡単にまとめました。 Abstract Ⅰ. Introduction -> Surveyの概要について取りまとめ Ⅱ. Overview of RAG -> RAGのメインのコンセプトと現在の枠

    【サーベイ論文まとめ】RAG(Retrieval-Augmented Generation) - Qiita
  • Amazon Bedrock Converse API と Tool use を知識ゼロから学び,発展的なチャットアプリを実装する - Qiita

    Amazon Bedrock Converse API と Tool use を知識ゼロから学び,発展的なチャットアプリを実装するPythonAWSbedrock生成AIclaude はじめに 株式会社 NTT データ デザイン&テクノロジーコンサルティング事業部の @ren8k です. 先日,Amazon Bedrock の Converse API と Tool use (function calling) を利用した Streamlit チャットアプリ(デモ)を作成し,以下のリポジトリに公開しました.記事では,チャットアプリ開発の過程で得た知見を基に,初学者から上級者までを対象として,Tool use の仕組みやその利用方法,発展的な活用方法を共有いたします. Converse API とは Converse API とは,統一的なインターフェースで Amazon Bedrock

    Amazon Bedrock Converse API と Tool use を知識ゼロから学び,発展的なチャットアプリを実装する - Qiita
  • UnstructuredによるPDFからの画像抽出 - Qiita

    Help on package unstructured.partition in unstructured: NAME unstructured.partition PACKAGE CONTENTS api auto common csv doc docx email epub html image json lang md model_init msg odt org pdf pdf_image (package) ppt pptx rst rtf strategies text text_type tsv utils (package) xlsx xml FILE /local_disk0/.ephemeral_nfs/envs/pythonEnv-1d54fac3-205e-4212-b4a8-f9a731bb4d57/lib/python3.10/site-packages/un

    UnstructuredによるPDFからの画像抽出 - Qiita
  • GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~ - Qiita

    GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~rag事前学習生成AILLMDocumentIntelligence はじめに 記事の背景 Retrieval-Augmented Generation(RAG)は、クエリに基づいた情報検索を行い、その結果を基に回答を生成する技術です。これは大規模言語モデル(LLM)の活用法の一つであり、新しい知識や企業文書などに対しても効果的に利用できます。しかし、RAGにはいくつかの課題があり、特に情報の関連付けや意味的理解の不足が精度の低下につながることがあります。 通常のRAGは、主にベクトル類似性を利用して情報を検索します。これは、情報断片の表面的な類似性を評価するものであり、深く複雑な関連性を捉えることが難しいです。また、ベクトル化された情報は独立したエンティティとして扱われるため、文

    GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~ - Qiita
  • Azure OpenAIのGPT-4oを使ってRAGを画像でやってみよう - Qiita

    はじめに GPT-4oがAzure OpenAIAPIからも使えるようになりました。 現在(2024/5/31時点)は音声はまだ使えないようで、テキストと画像が入力に使えます。 そこで、RAGでの参照情報を、テキストではなく画像にしたい、というのが記事の内容です。 RAGでは通常、参照情報を文字列にしてプロンプトに入れて使っています。 参照情報に表やグラフがある場合は、適宜文字列に変換していました。ですが、画像をそのまま渡してしまえば、表やグラフの文字列への変換は必要ありません。 ということでやってみます。 (今までも、GPT-4 Turbo with Vision等で画像使えましたが、GPT-4oは値段がGPT-4の凡そ半額ぐらいになり、性能もいいらしいので使ってみようという感じです。) 画像の準備 サンプルとして、以下を用意しました。 Azure OpenAIへのリクエスト時は、画

    Azure OpenAIのGPT-4oを使ってRAGを画像でやってみよう - Qiita
  • 効果検証のための因果推論手法のチートシート - Qiita

    効果検証においてABテストによる単純比較以上のことをやろうすると、因果推論の各種手法を用いることになります。しかし、因果推論は主義や用語などが統一されておらず、いつ何を使えばいいかが分からないというハードルがあります。 そんな因果推論の手法を整理し、初~中級者にとって学習・活用の見通しが立てやすいようにまとめたものが記事です。 2023/12/6追記 もともとこの記事は「もう迷わない!効果検証のための因果推論手法のチートシート」というタイトルだったのですが、"迷わない" はどう考えても言い過ぎだったので、タイトルを修正しました。沢山手法があるけど違いが分からなくて混乱しがち、というのが執筆のモチベーションです。むしろ 迷子のお伴 として活用していただけると幸いです。 特にフローチャートの部分は、これに従っておけばOKという主張ではなく、あくまで手法間の関係を整理するためのもの、そしてこう

    効果検証のための因果推論手法のチートシート - Qiita
  • レコメンドアルゴリズム入門:基礎から応用まで実装に必要な知識を解説 - Qiita

    1: 購入 0: 閲覧(したが購入してない) -: 未観測 ユーザーベース型 ユーザー同士の類似度を計算 「あなたと購入履歴の似たユーザーはこんな商品を買っています」 行を各ユーザーのベクトルとみなして、似たユーザーを見つける(上位N人) 似たユーザーが購入しているアイテムを推薦する(N人の平均値などで購入しそうな順に提示) アイテムベース型 アイテム同士の類似度を計算 「この商品を買ったユーザーはこんな商品も買ってます」 列を各アイテムのベクトルとみなして、類似度の高いアイテムを推薦する(上位M件) 類似度計算には、コサイン類似度やJaccard類似度が使われる。 類似度を計算する際に、未観測「-」は適当な値(0, 0.5など)で埋めるか、無視をする。 ログデータを使うため、情報の少ない新規アイテム/新規ユーザーに弱いコールドスタート問題がある。 コンテンツベースフィルタリング アイテム

    レコメンドアルゴリズム入門:基礎から応用まで実装に必要な知識を解説 - Qiita
  • AnthropicとCohereとBedrockのTool Useを比較 - Qiita

    calculator_tool = { "name": "calculator", "description": "A simple calculator that performs basic arithmetic operations.", "input_schema": { "type": "object", "properties": { "operation": { "type": "string", "enum": ["add", "subtract", "multiply", "divide"], "description": "The arithmetic operation to perform.", }, "operand1": {"type": "number", "description": "The first operand."}, "operand2": {"

    AnthropicとCohereとBedrockのTool Useを比較 - Qiita
  • マルチモーダルLLMを理解する - Qiita

    想像してみてください: お気に入りのソーシャルメディアをスクロールしていると、絵のように美しくて素晴らしい風景画像に出くわします。興味をそそられたあなたは、仲間からの反応を期待して、その場所に関する質問を入力します。すると、仲間に代わって機械が風景と場所をそのまま識別し、詳細な説明に加えて、近くのアトラクションまで提案してくれました。 このシナリオはサイエンスフィクションではなく、さまざまなモダリティ(様式)を組み合わせることでAIの世界を拡張する マルチモーダルLLM (以下、M-LLMと記載します)の可能性を示しています。 M-LLMはマルチモーダル情報をシームレスに統合し、テキスト、画像、音声などを含む多様な形式のデータを処理して世界を把握できるようにします。M-LLMの中核は、さまざまなデータ型を取り込むことができる汎用性の高いニューラルネットワークで構成され、それによってさまざま

    マルチモーダルLLMを理解する - Qiita
  • LLM 評価メトリクス: LLM 評価に必要なものすべて - Qiita

    最近、DeepEvalについてあれこれ調べているのですが、以下の記事がまとめられていてよかったので、自分の備忘録として整理しました。 https://www.confident-ai.com/blog/llm-evaluation-metrics-everything-you-need-for-llm-evaluation 元記事後半に記載されている、RAG以降については割愛してます。 TL;DR LLM評価指標は、LLMの出力を何らかの基準でスコアリングする指標。そのスコアの根拠も示してくれたりする モデルベースな手法としてLLMを用いた指標がある。これがおすすめ。 DeepEvalライブラリ(python)で簡単に試せる。G-Evalを軽く試してみたが、結構使えそう。LLMの性能評価や、プロンプトの性能評価によいのでは。 ただしテストデータの件数によっては、GPT4課金がはかどりそう(

    LLM 評価メトリクス: LLM 評価に必要なものすべて - Qiita
  • PDFをLLMで解析する前処理のパーサーは何が良いのか?(pdfminer, PyMuPDF, pypdf, Unstructured) - Qiita

    PDFをLLMで解析する前処理のパーサーは何が良いのか?(pdfminer, PyMuPDF, pypdf, Unstructured)PythonpdfminerPyMuPDFpyPDFUnstructured 現状の LLM は PDF ファイルを直接処理出来ない為、予めなんらかのプレーンテキスト形式に変換する必要があります。 (PDFを読める各チャットアプリも内部的には何らかの手段でプレーンテキスト形式に変換しているはずです) 変換を行ってくれるライブラリは複数存在する為、動作の違いを確認します。 抽出プログラム 抽出する対象のPDFファイルはBedrockユーザーガイドの日語版を使います。

    PDFをLLMで解析する前処理のパーサーは何が良いのか?(pdfminer, PyMuPDF, pypdf, Unstructured) - Qiita
  • 【技術書典】Streamlitの入門書で初出展してみて - Qiita

    前置き こんにちは。データエンジニアの山口歩夢です! 5/26の技術書典のオフラインイベントにて、Streamlitの入門書を執筆して初出展してきました。 「Streamlitデータ可視化入門」を購入してくださった皆様、手に取ってくださった皆様、興味を持ってくださった皆様、誠にありがとうございます。 そして、レビューやブースでの販売、告知などお力を貸してくださった皆様、当にありがとうございました。 頒布した同人誌 今回の頒布物はこちらです。 Streamlitの公式ドキュメントを基礎的なところからしっかり読み、2ヶ月くらいかけてコツコツ書き進めました。 Streamlit当に基礎的なところから、自分が業務でStreamlitを使っていて便利だなと思った機能など幅広く書かせていただきました。 公式ドキュメントを入念にチェックすることでしか気付けなかった機能なども書けて良かったなと感じて

    【技術書典】Streamlitの入門書で初出展してみて - Qiita
  • OpenAI EvalsをAzure OpenAI ServiceのLLMモデルで動かす方法 - Qiita

    結論 公式ドキュメントを参考に evals/registry/completion_fns 配下のYAMLファイルに以下を追加する。 langchain/llm/aoai-gpt4-chat: class: evals.completion_fns.langchain_llm:LangChainChatModelCompletionFn args: llm: AzureChatOpenAI llm_kwargs: openai_api_type: "azure" openai_api_version: "2023-05-15" openai_api_base: "https://XXXX.openai.azure.com" openai_api_key: "XXXXXXX" model_name: gpt-4 deployment_name: "aoai-gpt4" OpenAI Eval

    OpenAI EvalsをAzure OpenAI ServiceのLLMモデルで動かす方法 - Qiita
  • GPT-4o対応【24年5月最新】API Key 発行手順と課金方法 - Qiita

    クレジット登録とチャージ https://platform.openai.com/account/api-keys を開いてください。 画像の通り登録し、5ドル以上をチャージします。 API Keyの発行 https://platform.openai.com/account/api-keys を開いてください。 + Create new secret key をクリックします。 「LINE Bot用」などと入力します。これはAPIキーをあとで識別するためのものなので、入力必須ではありませんが、何かしら入れておくとあとで便利です。 APIキーが作成されるので、Doneの上のコピーボタンをクリックしてAPIキーをコピーしておきます。 ここでコピーし損ねるとこのキーは二度と表示されませんので、メモ帳などに貼り付けておきましょう。 (とはいえ失念してしまっても、削除して再生成が簡単にできるのであ

    GPT-4o対応【24年5月最新】API Key 発行手順と課金方法 - Qiita
  • Azure OpenAI の Assistants API によるエージェント開発メモ① - Qiita

    Assistants API を使うと、データを分析し、ソリューションを提案し、タスクを自動化できる、高度な Copilot のようなエクスペリエンスを備えたアプリケーションを簡単に作成できます。2024/02/06 に Azure OpenAI Service でもパブリックプレビューが開始されました。 ステートレスな Chat Completions API であるのに比べて、ステートフルな Assistants API は、自動的に管理される永続的なスレッドがサポートされます。つまり、会話状態管理システムを開発し、モデルのコンテキスト ウィンドウの制約を回避する必要がなくなります。さらにアシスタントは、必要に応じて複数のツールに並列アクセスすることもできます。 以下のツールが利用可能です。 Code Interpreter Function calling(関数呼び出し) 動画でも解

    Azure OpenAI の Assistants API によるエージェント開発メモ① - Qiita