ブラウザ内でPostgresのWASM版を利用できる「postgres.new」を発表 Supabase:全てのクエリをブラウザ内で直接実行 基盤技術に「PGlite」を採用 Supabaseは、AI支援を利用しながら、ブラウザ内で直接動作する「Postgres」データベースを即座に幾つでも起動し、サンドボックスとして使用できる「postgres.new」を発表した。
DuckDBチームは2024年6月3日(オランダ時間)、オープンソースの分析データベースシステム「DuckDB」の正式バージョン1.0.0を公開した。 DuckDBは、2018年にプロジェクトの最初のソースコードが作成された。現在のC++エンジンのコードは30万行を超える。速度、信頼性、ポータビリティ、使いやすさに重点を置いて設計されており、豊富なSQLの方言をサポートしている。サードパーティーによる拡張機能も複数構築、配布されている。 スタンドアロンのCLI(コマンドラインインタフェース)アプリケーションとして利用可能で、Python、R、Java、Wasmといったクライアントがあり、pandasやdplyrなどのパッケージと深く統合されている。 DuckDB 1.0.0の重点ポイント 関連記事 PostgreSQLの主要コントリビューター「EDB」が語る、クラウドネイティブデータベース
Dioxusの概要 Dioxus(ディオクサス)は、Dioxus Labsによるクロスプラットフォーム対応のアプリを構築できるRustライブラリです。移植性が高く(portable)、高性能で(performant)、人間工学に基づいた(ergonomic)設計が特徴とされています。Dioxusでは、単一のコードで以下のプラットフォームで動作するアプリを開発可能です。 (1)Web WebAssembly技術を用いたSPA(Single Page Application)を開発できます。WebAssemblyについては@ITの連載「いろんな言語で試す、WebAssembly入門」で紹介しています。その第5回「RustでWebAssembly――「Rust and WebAssembly」を体験する」でRust and WebAssemblyを紹介しています。本記事の理解にWebAssemb
カナダのCohereは2024年4月4日(カナダ時間)、同社のプロダクトの中で「最も強力でスケーラブル」とする大規模言語モデル(LLM)「Command R+」を発表した。 Command R+はエンタープライズユースケース向けに設計されており、同社が同年3月に発表したLLM「Command R」と同様に12万8000トークンのコンテキストウィンドウを備える他、ハルシネーション(AI〈人工知能〉がもっともらしいが誤った回答を返すこと)を減らすインライン引用を含む検索拡張生成(RAG)、グローバルビジネスをサポートするための10カ国語対応、高度なビジネスプロセスを自動化するツールの使用といった特徴を持つ。対応言語は英語、フランス語、スペイン語、イタリア語、ドイツ語、ポルトガル語、日本語、韓国語、アラビア語、中国語だ。 CohereとMicrosoftは同日、新たな提携により、Microsof
受講するには総務省のWebサイトへの登録が必要だが、登録料や受講料は無料だ。ドコモgaccoが運営するオンライン講座プラットフォーム「gacco」で受講できる。 講座は1回当たり10分程度 社会人のためのデータサイエンス入門は、社会人や大学生を対象とした、統計データ分析の基本的な知識を学べる入門編講座で総務省は「統計学の基礎や統計データの見方などを学習し、身近なデータの活用に役立てられる」としている。2015年3月に開講し、これまで延べ約19万2000人が受講した。 関連記事 密ベクトル(Dense Vector)とは? 疎ベクトル(Sparse Vector)との違い 全てまたはほとんどの成分が0以外の数値を持つベクトルを「密ベクトル」と呼び、その代表例にはテキストなどのEmbedding(埋め込み表現)がある。また、大部分の成分が0で、一部のみが0以外の数値を持つベクトルを「疎ベクトル
Canonical、CNCF準拠の新たなk8sディストリビューション「Canonical Kubernetes」のβ版を公開:「Charmed Kubernetes」「MicroK8s」の経験に基づく Canonicalは新たなKubernetesディストリビューションである「Canonical Kubernetes」のβ版を公開した。「Charmed Kubernetes」「MicroK8s」の経験に基づき、開発者が求める迅速な環境構築とエンタープライズ向けの自動化機能やセキュリティ機能の両方を提供するものだという。 Canonicalは、2024年3月14日(米国時間)、Kubernetes 1.30に基づく新たなKubernetesディストリビューション「Canonical Kubernetes」のβ版を発表した。 Canonicalはこれまでエンタープライズ向けKubernetes
Microsoftは2024年3月19日(米国時間)、特定のクラウドに依存しないオープンソースのKubernetesネットワークオブザーバビリティ(可観測性)プラットフォーム「Retina」をリリースした。Retinaは、コンテナネットワークインタフェース(CNI)、OS、クラウドにかかわらず、Kubernetesのワークロードトラフィックを可視化、観測、デバッグ、分析できる。 Microsoftによると、Retinaはアプリケーションとネットワークの健全性とセキュリティを監視するための一元化されたハブとして機能するという。また、DevOps、SecOps、コンプライアンスのユースケースに取り組むクラスタネットワーク管理者、クラスタセキュリティ管理者、DevOpsエンジニアに、実用的な洞察を提供できるとしている。 関連記事 非同期マルチスレッドフレームワーク「Pingora」をオープンソー
docstringとは 本連載の第5回「文字列の基本」の「トリプルクオート文字列」でも触れたが、Pythonではシングルクオート「'」またはダブルクオート「"」を3つ連続して並べた三重引用符で文字列を表現できる。 三重引用符で囲まれた「トリプルクオート文字列」は改行コードを含んだ文字列などを記述するのに便利に使えるが、これがよく使われる場面がもう一つある。それがdocstringと呼ばれる使い方だ(「ドックストリング」「ドキュメント文字列」「ドキュメンテーション文字列」などとも呼ばれる)。 docstringは、関数などの仕様(例えば、何をして何を戻り値とするのか、呼び出すのに必要なパラメーターは何かなど)をその利用者に対して説明するために、その定義に埋め込んだ形で記述する。 以下に関数にdocstringを記述した例を示す。三重引用符にはシングルクオートとダブルクオートのどちらを使っても
用語「グラウンディング」について説明。特定の知識や情報源(ナレッジベースなど)に基づいて言語モデルの生成内容を裏付けるプロセスのことで、チャットAIに独自の情報源を付与するRAG(検索拡張生成)という仕組みがその代表例。チャットAIがもっともらしいウソを答える問題(=ハルシネーション)を減らせるといったメリットがある。 連載目次 用語解説 生成系AI/LLM(大規模言語モデル)の文脈においてグラウンディング(Grounding)とは、特定の知識や情報源(例えばナレッジベースなど)に接続(=接地:ground)することで、言語モデルの回答や生成内容を裏付けるプロセスを指す。ChatGPTやGeminiに代表されるチャットAIに独自の情報源を付与するRAG(Retrieval-Augmented Generation:検索拡張生成)という仕組みがあるが、まさにそのプロセスがグラウンディングの一
2015年にバージョン1.0に到達した「Rust」は、比較的新しいプログラミング言語です。2019年には、Microsoftが「Windows」の開発にRustを採用すると発表したり、Googleが「Android 12」の開発から、「C/C++」の代わりにRustを採用したりしたことも記憶に新しいのではないでしょうか。 本eBookでは、連載「基本からしっかり学ぶRust入門」全18回を収録。Rustとはどのような言語なのかに始まり、なぜMicrosoftやGoogleがRustに注目したのか、Rustは他のプログラミング言語とどう違うのか、言語の特徴や、開発環境の構築方法、記述方法まで紹介しています。 本eBookの前半では、Rustの特徴や基本文法を、後半では、Rustを使ったアプリケーションを開発する際のフォルダ構造や、テストの記述方法も紹介しています。各回ともサンプルコードととも
はじめに 前回は、Actix Webによる開発例として、シンプルな投稿アプリを作成し、投稿の一覧表示機能を実装しました。今回は、このアプリを拡張し、投稿の表示、作成、更新、削除といった定番の機能を実装していきます。その過程で、Actix Webにおけるリクエストデータの解釈やレスポンスデータ生成の詳細を紹介していきます。 ルートとハンドラー関数の対応を決める 投稿アプリで使うルートとハンドラー関数の対応は以下の通りとします(図1)。RESTfulに近い成り立ちとなりますが、Webブラウザからの呼び出しになるので、基本的にHTTP GETとPOSTを使用したものとなります。 全投稿の一覧表示(GET、/posts):index関数※作成済み 指定投稿の表示(GET、/posts/{id}):show関数 新規投稿の作成(GET、/posts/new):new関数 新規投稿の登録(POST、/
米国スタートアップ企業、Imperfect FoodsのDevOpsエンジニア、マシュー・グラスバーガー氏は2023年11月9日(米国時間)、Webメディア「TechTarget」で「Docker」とRed Hatの「OpenShift」の主な違いについて解説した。 コンテナ導入を検討するに当たっては多くの選択肢がある。選択肢があまりにも多いので、選択や比較が非常に混乱する恐れがある。コンテナアプリケーションのデプロイメントとスケーリングをシンプルにする機能を提供するのが、DockerとOpenShiftだ。 開発者もテスト担当者も、このDockerとOpenShiftの両ツールの機能と特徴を慎重に評価すれば、戦略的なコンテナ化に最適なツールを選択し、コンテナアプリケーションのデプロイメントを確実に成功に導くことができる。 Dockerとは 関連記事 クラウドネイティブをけん引してきた「D
生成AI入門:議事録を答えるチャットAI(RAGアプリ)を作ってみよう【プログラミング不要】:AI・データサイエンス超入門 生成系AIの導入が急速に広がる今、その有用性や活用法が気になる方へ。一例としてプログラミング不要で、“会議の議事録を基に質問に答えてくれる「独自のチャットAI」”の作成を試みます。社会人の目線で、実践的な生成系AIの雰囲気をつかみましょう! 連載目次 現在、企業への生成系AI*1の導入が急速に拡大しています。2023年10月23日に日本マイクロソフトが記者向けに発表した内容によれば、日本国内でAzure OpenAI Service(Microsoftが提供するクラウドAIサービス)を活用している企業は560社以上、全世界では1万1000社を突破しています。このような状況から、「うちの会社も生成系AIを導入すべきか?」「生成系AIが何の役に立つのか?」と気になっている
LLMアプリケーションを構築するための5つのステップをGitHubが解説:「LLMを使わないソフトウェアの構築とは根本的に異なる」 GitHubは2023年10月30日(米国時間)、LLMアプリケーションを構築するために知っておくべき5つのステップを公式ブログで紹介した。 LLMアプリを構築する5つのステップ 同社は、LLMやあらゆる機械学習(ML)モデルを使ったソフトウェアの構築は、LLMを使わないソフトウェアの構築とは根本的に異なると主張している。一連のコマンドを実行するためにソースコードをバイナリにコンパイルするのではなく、開発者は一貫性のある正確な出力を生成するために、データセット、エンベッディング、パラメーターの重みをナビゲートする必要があることが要因の一つだという。 1.1つの問題に集中する 重要なのは、適切な大きさの問題を見つけること。すぐに反復して前進できるように十分に集中
Dockerは2023年10月3日から10月5日に開催されたDockerCon 2023で、「Neo4j」「LangChain」「Ollama」とともに「GenAI Stack」を発表した。 GenAI Stackは、Dockerおよび生成AI(GenAI)分野の先端技術を結集したもので、開発者はわずか数クリックでGenAI Stackをデプロイし、生成AIを活用したアプリケーションを開発、構築できるという。 GenAI Stackの特徴は GenAI Stackを利用することで、AI/機械学習(ML)モデルの統合を簡素化し、生成AI技術を容易に利用できる。Ollama、Neo4jなど生成AIによるアプリケーション開発に必要な開発環境が、Dockerコンテナで連携可能な状態で提供される。 関連記事 「生成AI」と「ローコード/ノーコード開発ツール」は相性が良い? 日立ソリューションズが導入
1 生成AIとは 生成AIは、学習したデータを基にテキストや画像などのコンテンツを生成するAI(人工知能)です。プロンプト(AIへの命令)によって、言語間の翻訳や文章、画像、プログラムコードなど、さまざまなコンテンツを自動生成できます。従来のビジネスを大きく変革し得る存在として世界中で注目されており、日本国内の企業においても生成AIを活用した生産性向上施策やビジネス戦略が立てられています。 2 生成AIの仕組み 生成AIがコンテンツを生成するためには、大量のデータの学習が必要です。ディープラーニングなどの「機械学習」と呼ばれる仕組みによってデータの特徴やパターンを学習し、精度の高いコンテンツを生成できます。
本連載の目的 本連載は、@ITで2021年7月から連載された「基本からしっかり学ぶRust入門」(現在は完結)の応用編です。Rustは、当時から人気上昇中の言語と評価されていましたが、Stack Overflowが毎年実施している調査「Stack Overflow Developer Survey 2022」でも、変わらず「Rustが開発者の愛する言語」の1位に選ばれました。これは7年連続してのことです。この調査は、言語の好きと嫌いの差が大きいほど上位にランクされるので、Rustを嫌いな開発者は少数、という見方ができます。また、「これから使いたい言語」の1位も獲得しているようで、少なくとも開発者の間では今後も支持を伸ばしていきそうな言語と言えます。 Rustは美点の多いマルチパラダイム言語 Rustの美点は多岐にわたり、ネイティブコードコンパイラによる高速な実行バイナリ、所有権と借用の仕組
高いレベルのモジュール性を求めるのであれば、マイクロサービスアーキテクチャが適している。だが、複雑さが増すことに価値があるかどうかや、どのように呼び出すかを検討しなければならない。 アプリケーションアーキテクチャの選択は重要な決定事項だ。どの程度の複雑さまで対処するつもりがあるか、アプリケーションにどの程度の柔軟性を持たせるか、アプリケーションをどのようなタイプの環境でホストするかによって、その答えは変わってくる。 モジュール型のアプリケーションを設計するのであれば、アプリケーションを3つの主要コンポーネントに分割する3層アーキテクチャを選択できる。あるいは、さらにモジュール性を高めるのであれば、マイクロサービスアーキテクチャも選択できる。 本稿では、3層アーキテクチャとマイクロサービスアーキテクチャを細かく比較し、どちらをいつ使用するかを考えてみる。 3層アプリケーションアーキテクチャと
組織が新しいテクノロジーを導入する際は、概念実証の作業と検証を優先し、セキュリティの考慮を後回しにすることが多いということを、ソフトウェアエンジニアは知っている。しかし、シフトレフトへの動きが進むとともに、最高情報責任者(CIO)や最高技術責任者(CTO)がセキュリティを最優先するようになっているため、エンジニアは開発の初期段階からセキュリティを考慮する必要がある。 開発にコンテナが関係する場合、開発者とテスト担当者は次の3つの主要な脆弱(ぜいじゃく)性スキャンに重点を置く必要がある。 これらのスキャンを正しく実装すれば、アプリケーションレベルでセキュリティのリスクを軽減できる。 コンテナは仮想化されたOSだ。そのため、フットプリントは極めて小さく、数秒で作成できる。エンジニアは、Dockerの「Docker Hub」にアクセスして、「Ubuntu」や「Nginx」などの公式リポジトリから
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く