Tumgik
memork · 3 hours
Text
ゼロからLLM(大規模言語モデル)を構築するための参考情報の紹介
この記事では、ゼロから大規模言語モデル(LLM)を構築したい場合に参考になりそうな情報源がまとめられている。有名な講座やプロジェクト、ブログ記事などのリンクが紹介されており、LLMの学習や実装に取り組む際の助けとなる情報が集められている。
LLMはAI分野の中でも注目を集めており、ゼロから作る過程を通して深い理解が得られると言えるでしょう。今後LLMに関する優れた書籍が日本語で出版されることを期待したい。実際にLLMの構築に取り組むには、莫大な計算リソースが必要となるため、個人で挑戦するには困難が伴うかもしれませんが、学習のためのリソースは整備されつつあり、着実に前進できると考えられます。参考情報をまとめる作業自体が、今後のLLMの発展に寄与する良い取り組みであったと言えるでしょう。
0 notes
memork · 3 hours
Text
「Namespace on read」機能へのFAQの要約と意見
このFAQでは、Ruby言語に新しい「Namespace on read」機能を導入することについて、その目的や実装状況、課題などが説明されている。「Namespace on read」はクラス・モジュール定義を分離することで、1つのプロセスで複数のアプリケーションを動作させることを目指している。しかしながら、この機能導入には多くの課題があり、ライブラリやアプリケーションの互換性確認など、コミュニティの協力が不可欠となる。
「Namespace on read」機能は単にクラス名などの名前空間を分離するだけでなく、クラス定義やメソッド定義などを分離できるという画期的な機能である。この機能が実現すれば、Rubyにおけるマルチテナント運用の実現など、大きな可能性が期待できる。一方で、ライブラリやアプリケーションの互換性維持が大きな課題となるため、実用化に向けてはコミュニティ全体での検証作業が欠かせない。今後の議論の行方と実装の進捗に注目が集まる。
0 notes
memork · 18 hours
Text
dbtの概要と使い方ガイド
dbtは、データアナリストのためのデータモデリングツールである。SQLスクリプトの管理、スケジューリング、テスト、ドキュメンテーションなどの機能を持つ。dbtではJinjaテンプレートエンジンを使ってSQLを記述し、dbtコマンドを使ってコンパイル、実行、テストなどを行う。また、モデル間の依存関係を自動解決し、実行順序を決定する。
dbtはデータアナリストにとって非常に有用なツールである。SQLコードの管理が容易になり、再利用性も高まる。自動テストやドキュメンテーション機能もあり、データモデリング作業の生産性が大きく向上する。一方で、新たにdbtの記法を覚える必要があり、dbtの仕組み自体を理解するコストがかかる課題もある。プロジェクトの規模に応じて導入の是非を検討する必要がある。
0 notes
memork · 1 day
Text
Databricks分析プラットフォームの機能的概要
本記事ではDatabricksのアナリティクス製品の概要が記載されている。OptanonのCookieコンセントマネージャーのような同意取得機能と、RudderStackなどのデータ収集ツールとの連携により、ユーザーの同意に基づいたデータ収集と分析を行うことができる。また、これらのコード群がウェブサイトに組み込まれていることがわかる。
Databricksのアナリティクス製品は、データの収集、同意管理、分析の一連の機能を提供している。コンプライアンスの観点からはOSS製品の活用により意義があると考えられるが、プロプライエタリなツール連携の必要性や複雑なスクリプト管理の煩雑さなども気になる点である。また個人データの取り扱いに十分な注意を払う必要があり、クッキーの保持期間やプライバシー保護など、さらなる対策を検討すべきであろう。
0 notes
memork · 1 day
Text
次世代データ基盤「データレイクハウス」の概要と Google Cloud における実現方法
この記事では、データレイクハウスの概要と Google Cloud でのアーキテクチャ実装方法について解説しています。データレイクハウスとは、データウェアハウスとデータレイクの長所を組み合わせた次世代データ基盤です。構造化データ・非構造化データの一元管理と高度な分析が可能になります。Google Cloud では、BigQueryとさまざまなサービスを組み合わせることで、データレイクハウスアーキテクチャを実現できます。
データレイクハウスは今後ますます重要になると考えられます。構造化・非構造化データの一元管理と高度な分析が可能になるため、企業のデータ利活用を大きく促進できるでしょう。しかし、データレイクハウスの構築・運用は複雑です。Google Cloudのマネージドサービスを活用することで、比較的容易に実装できると考えられますが、設計や構成に関する専門知識が必要不可欠です。データ基盤を最適化し、データ資産の価値最大化のためには、専門家の支援を得ることが重要だと思われます。
0 notes
memork · 1 day
Text
個人開発OSSが世界に勝てなかった話の要約と示唆に富む意見
筆者は5年間、Python用のシリアライゼーションフレームワークpyserdeを開発してきました。pyserdeはRustのserdeにインスパイアされ、型アノテーションに基づいた強い型付けのクラスを生成できます。しかし、企業が開発するライバリpydanticに勝つことはできませんでした。勝てなかった理由は、1人対企業の開発体制、広報活動の差、最終的にはPythonよりもRustを使うようになったことです。一方で、OSSを通して英語のドキュメント作成、自動化、オープンなコントリビュート文化の重要性を学びました。
個人開発のOSSでも優れた製品を作ることは可能であり、それを世界に広めるためには情熱を持って広報活動を行う必要があります。また、継続的に自身のOSSを使い続け、ユーザーのフィードバックループを維持することが大切です。企業のOSSと競合する場合、焦点を絞った機能で差別化を図ることをおすすめします。そうすれば、プログラマーのニーズに合ったシンプルで強力なツールを提供できるはずです。個人の力を過小評価せず、オープンソースコミュニティの力を最大限に活用することが重要だと思います。
0 notes
memork · 1 day
Text
BigQueryのデータキャンバス機能を使ってデータモデリングを試してみた
この記事はSansan株式会社の研究開発部門で働くデータエンジニアの視点から、BigQueryのデータキャンバスでデータモデリングを行った経験を紹介している。データキャンバスではデータへのアクセス、メタデータの確認、探索的データ分析、モデリング、レビューの一連の作業をノード形式で行えるため、SQLクエリの生成が容易になること、処理がBigQuery内で完結してデータの移動が不要なことなどの長所が述べられている。一方で、セキュリティ、UX、AI生成クエリの精度など課題もあると指摘している。
データ基盤チームの業務においてデータキャンバスが有用であることが分かった。特に、処理のポータビリティが高く、データを移動させずに分析できるのは大きな利点であると考えられる。ただし、UI/UXの改善やセキュリティ対策の強化など、課題も残されている。データ活用を推進するための新しいツールとして、今後の進化に期待がかかる。
0 notes
memork · 1 day
Text
Next.js 15 RCの簡潔な要約と示唆に富む疑問点
Next.js 15 RCでは、React 19 RCとReact Compilerをサポートし、キャッシュのデフォルト設定を変更し、段階的なPartial Prerenderingの採用や、レスポンス後のコード実行ができるnext/afterなどの新機能が追加されました。また、create-next-appの更新や外部パッケージのバンドルの最適化もされています。
Next.jsのキャッシュ戦略が大きく変更されたことで、開発者は自身のアプリケーションに適したキャッシュ方針を意識的に設定する必要があるの��はないでしょうか。また、Partial Prerenderingの段階的な採用は、様々なユースケースに合わせた柔軟なレンダリング戦略を可能にするものの、その設定の複雑さも懸念されます。React Compilerは大きな期待が寄せられていますが、いまのところはビルド時間の遅延が課題のようです。
0 notes
memork · 2 days
Text
エンジニア新卒研修「エンジニア基礎」の要約と意見
本資料は、新卒エンジニアが基礎的なスキル・マインドセットを身に着けるための研修資料の要約である。プロ意識を持ち、コミュニケーション力を高め、キャッチアップ力を磨き、作業効率化のためのツール活用や、コードの明瞭性を重視することなどが説かれている。ポータブルスキルやマインドセットの重要性も強調されており、継続的な学びとふりかえりを通じた成長が求められている。
エンジニアとしての成長に必要なスキル・マインドセットが包括的にまとめられた良質な資料である。特に新人エンジニアにとっては示唆に富んでいる。一方で、具体的な実践手法が少ないため、もう少し詳細な事例や演習課題があると理解が深まるのではないだろうか。また、サーバサイド開発にフォーカスしているようであり、フロントエンドやモバイル開発、インフラなど他の領域についての言及があれば、より包括的になると考えられる。
0 notes
memork · 2 days
Text
Google Cloud Functions(第2世代)をTypescriptで作成およびデプロイする手順
この記事では、Google Cloud Functions(GCF)の第2世代をTypescriptで作成し、デプロイする手順が丁寧に解説されています。まずはjsによる作成方法を示した上で、Typescriptに移行する際の作業工程を詳細に記載しています。tsconfig.jsonの設定やトランスパイルの方法、デプロイ時の注意点など、実践的な知見が満載です。
GCPのサービスを実践的に学ぶための良い題材になる記事であると思います。特にTypeScriptを用いたクラウドリソースの構築は、近年の開発動向に即した実践的な技術を身につけられる点で有益であります。一方で、細かいエラーへの対処方法なども解説されており、実践時によくあるつまずきへの対処方法を学べる点も有用であります。記事がベースとなるソースコードや詳細な手順も公開されていれば、より実践を重ねやすくなると考えられます。
0 notes
memork · 2 days
Text
Property Based Testingと Ractorの関係に関する技術解説
本記事は、RubyKaigi 2024の1日目で行われた「Unlocking Potential of Property Based testing with Ractor」と題されたセッションの内容を詳しく解説している。Property Based Testingと呼ばれるテスト手法の概要と、それをRactorを用いて並列化することによる実行時間の改善を目指す「PBT」gemの紹介、そしてベンチマークの結果と今後の課題が述べられている。
Property Based Testingとは言え、実用にあたってはプロパティ(テストすべき性質)の設定が難しい側面があり、また大量の入力値でテストを行うため実行時間も長くなるなどの課題があることがわかった。本記事で紹介されたPBTは、そうした課題を一部解決することを目指していたが、Ractorを利用するには依存ライブラリとの互換性など解決すべき問題もあることがわかる。つまり、Property Based Testingそのものの利点と課題を十分に理解した上で、状況に応じてスマートに運用することが肝心であろう。
0 notes
memork · 3 days
Text
うどんげQuineの作り方解説
この記事では、Rubyでうどんげの文字列をAAとして表し、それをbase64エンコードした値を元にQuineコードを生成する方法を詳しく解説している。AAのデータを0と1のビット列に変換し、その値をマーシャリングしてbase64化することで、限られたスペースにQuineのソースコードを格納できるようにしている。
プログラミングの創造性と技巧を高めるためにも、こうしたQuineコードの作成は良い練習になると思われる。一見難解に見えるが、段階を追って丁寧に説明されているので、読み解くのは決して難しくない。しかしながら、このようなコードを一から書くことは並大抵の努力では到底できそうにない。ちょっとした工夫を重ねた結果の賜物であり、その点が興味深い。
0 notes
memork · 3 days
Text
Reader API概要と意見
ReaderAPIはWebページの主要コンテンツを抽出し、LLMに適した形式で出力するAPIである。URLを指定して読み込ませたり、クエリを検索し上位の結果を取得したりできる。画像のキャプション付与や、リンク一覧の出力など高度な機能も備える。APIキーの発行により高い上限レート制限を受けられる。エラー処理やレート制限の情報も示されている。
ReaderAPIは非常に優れた機能を持つ。LLMへの入力としてクリーンなテキストを提供でき、最新の情報や画像情報の取り込みによりLLMの質の向上が期待できる。一方で、APIのレート制限が比較的低いのが気になる点である。将来的にリソースを増やしてレートを上げることが望まれる。また、サーバーレスアーキテクチャを採用しているため、すぐに使えない場合があり、その点でWebクローリングより不便かもしれない。
0 notes
memork · 3 days
Text
LangSmithを活用したRAGの評価・改善フローの整備
この記事ではLangSmithという、トレース・評価・プロンプト管理などを担うLLMアプリケーション開発プラットフォームを用いて、Retrieval Augmented Generation(RAG)の評価と改善のフローを整備する方法について説明されている。RAGはデータから関連情報を取得し、言語生成モデルの出力を改善する技術である。LangSmithを使うことで、RAGの性能評価や、評価結果に基づいたプロンプトの改善、再トレ���ニングなどのサイクルを効率化できるとしている。
LangSmithのようなプラットフォームが登場したことで、RAGなどのLLMを活用したシステムの開発がより容易になると考えられる。一方で、LLMを適切に利用するためには、データの質やプロンプトの工夫など、様々な側面から検討する必要がある。LangSmithがその作業をどの程度サポートできるのか、具体的な成功事例とともに示されることで、その有用性がより明確になると考える。
0 notes
memork · 3 days
Text
Lighthouseを使ったSEO対策の概要
Lighthouseは、Webサイトの評価ツールであり、特にページ速度やSEO対策の観点から様々な項目をチェックできる。スコアやレポートから課題を見つけ、改善に役立てることができる。大手サイトの事例から、PWAやパフォーマンス向上の重要性がわかる。
Lighthouseは総合的なサイト評価ができ、ユーザー視点での品質向上にも役立つツールである。ただし評価指標はあくまで目安の一つであり、実際の検索順位やユーザー体験には別の要因も関係する。Lighthouseと併せて、モバイルフレンドリーテストやtest my siteなど、複数のツールを使い分けることが望ましい。
0 notes
memork · 3 days
Text
プレディベースの Fine-Tuning Index がオープンソースの大規模言語モデルの可能性を示す
プレディベース社は、特定のタスクに最適化されたオープンソースの大規模言語モデルが既存の商用モデルを上回る性能を示す Fine-Tuning Index を公開した。同社の調査では、GPT-4 を超える性能を発揮する最適化済みモデルが多数あり、コストも格段に安価であることが明らかになった。
オープンソースの言語モデルは、従来の商用モデルに比べてコスト面で有利であるが、汎用性に欠けるとされてきた。しかし、本調査結果は、そうした見方を覆す可能性を示唆している。企業は、特化した用途に応じて、オープンソース言語モデルをファインチューニングすることで、高性能かつ低コストでAI製品を提供できるかもしれない。今後さらに、オープンソースAIの活用が進むことが期待される。
0 notes
memork · 3 days
Text
hacomonoがプロダクトエンジニア役割を定義した経緯と意義
hacomonoは組織の成長に伴い、プロダクト開発エンジニアの役割を明確化する必要性を感じた。そこで「プロダクトエンジニア」という新しい役割を定義した。プロダクトエンジニアとは「プロダクトの成長を軸に、オーナーシップを持って追求・越境していくエンジニア」のことを指す。この新しい役割の定義により、プロダクト開発におけるエンジニアの立ち位置を明確化し、キャリア形成の不安を解消できると期待されている。
プロダクトエンジニアという役割を定義したことは、プロダクト開発におけるエンジニアの役割を明確化し、エンジニアのモチベーション向上につながると考えられる。しかし、役割定義だけでは不十分である。実際にプロダクトエンジニアとしての活動を評価する仕組みや、研修制度などの育成施策も重要である。プロダクトエンジニアを個別最適な存在ではなく、組織の中の一員として位置づけ、組織全体の最適化を目指すことが肝心である。
0 notes