gettergotのブックマーク (427)

  • RAGの実案件に取り組んできた今までの知見をまとめてみた | DevelopersIO

    はじめに 新規事業部 生成AIチーム 山です。 ChatGPTOpenAI API)をはじめとしたAIの言語モデル(Large Language Model:以下、LLM)を使用して、チャットボットを構築するケースが増えています。通常、LLMが学習したときのデータに含まれている内容以外に関する質問には回答ができません。そのため、例えば社内システムに関するチャットボットを作成しようとしても、素のLLMでは質問に対してわからないという回答や異なる知識に基づいた回答が(当然ながら)得られてしまいます。 この問題を解決する方法として、Retrieval Augmented Generation(以下、RAG)という手法がよく使用されます。RAGでは、ユーザからの質問に回答するために必要そうな内容が書かれた文章を検索し、その文章をLLMへの入力(プロンプト)に付け加えて渡すことで、ユーザが欲しい

    RAGの実案件に取り組んできた今までの知見をまとめてみた | DevelopersIO
    gettergot
    gettergot 2024/02/07
  • 次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは?

    次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは? 機械学習AI処理の分野を中心に非常に高い人気のプログラミング言語である「Python」の次期バージョンに、処理速度の向上を目指したJITコンパイラが搭載される見通しです。 このJITコンパイラは、PythonコアデベロッパーのBrandt Bucher氏が提案し、実装しています。 そしてPython Software FoundationのフェローであるAnthony Shaw氏がブログ「Python 3.13 gets a JIT」で、このJITコンパイラについて解説しています。 これらの情報を元に、PythonのJITコンパイラがどのように実装されようとしているのか、少し紹介していきましょう。 RubyJavaScriptもJITが高速化を実現してき

    次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは?
    gettergot
    gettergot 2024/01/26
    “copy-and-patch”
  • 言語・技術スタックまとめ 15選 - Findy Tools

    企業の規模や業種によって採用される技術スタックは様々異なります。それは事業やプロダクトの特徴、過去に採用してきた技術などの要因に大きく影響されています。 この記事では、スタートアップからメガベンチャーの技術スタックの事例をまとめ、各社がそれぞれどのような意図や背景で現在の技術構成を作っているか、その設計思想を紐解いていきます。 他社の事例から学ぶことで、技術選定における考え方のヒントを見つけられると思いますので、ぜひ参考にしてください。 ※掲載している技術スタックは各社からご提供頂いたものを掲載しております 目次 1. 株式会社10X 2. 株式会社アンドパッド 3. キャディ株式会社 4. Classi株式会社 5. dely株式会社 6. フリー株式会社 7. GO株式会社 8. GMOペパボ株式会社 9. 株式会社ログラス 10. エムスリー株式会社 11. 株式会社マネーフォワード

    言語・技術スタックまとめ 15選 - Findy Tools
    gettergot
    gettergot 2024/01/24
    “PyTorch”
  • 『ソフトウェアアーキテクチャメトリクス―アーキテクチャ品質を改善する10のアドバイス』 - snoozer05's blog

    翻訳を担当した書籍『ソフトウェアアーキテクチャメトリクス―アーキテクチャ品質を改善する10のアドバイス』(オライリー・ジャパン)が明日(2024年1月24日)発売となります(電子書籍はオライリー・ジャパンのサイトでの購入となります)。書は、2022年10月に出版されたChristian Ciceri, Dave Farley, Neal Ford, Andrew Harmel-Law, Michael Keeling, Carola Lilienthal, João Rosa, Alexander von Zitzewitz, Rene Weiss, Eoin Woods 著『Software Architecture Metrics: Case Studies to Improve the Quality of Your Architecture』(O'Reilly Media)の全

    『ソフトウェアアーキテクチャメトリクス―アーキテクチャ品質を改善する10のアドバイス』 - snoozer05's blog
    gettergot
    gettergot 2024/01/24
  • Fixing For Loops in Go 1.22

    gettergot
    gettergot 2024/01/18
  • GitHub - microsoft/kiota: OpenAPI based HTTP Client code generator

    Kiota is a command line tool for generating an API client to call any OpenAPI described API you are interested in. The goal is to eliminate the need to take a dependency on a different API SDK for every API that you need to call. Kiota API clients provide a strongly typed experience with all the features you expect from a high quality API SDK, but without having to learn a new library for every HT

    GitHub - microsoft/kiota: OpenAPI based HTTP Client code generator
    gettergot
    gettergot 2024/01/15
  • eBPFを使った自動テストツール「Keploy」がすごい

    この記事はKeployのバージョンv2.0.0-alpha53 を前提に執筆しております。 Keployとは KeployはeBPFを利用して取得できるWebアプリケーションの通信に関するトレース情報を元に、テストとそのテストの実行時に利用するスタブサーバーを生成することができるツールとなります。 公式サイトのトップには以下のようなスローガンが掲げられています。 2 minutes to 90% test coverage! テストに苦労した経験のある方は興味を惹かれるのではないでしょうか。 現在まだアルファ段階のプロジェクトですが、GitHubスター数は2683(2024/01/04現在)、CNCF Landscape にも掲載されているなど、一定の注目を集め始めているOSSです。 開発主体はプロダクトと同名のKeployというインド発のスタートアップで、去年GoogleによるインドのA

    eBPFを使った自動テストツール「Keploy」がすごい
    gettergot
    gettergot 2024/01/15
  • Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% - Phoronix

    Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% Written by Michael Larabel in Linux Networking on 9 January 2024 at 02:23 PM EST. 76 Comments Beyond the usual new wired/wireless network hardware support and the other routine churn in the big Linux networking subsystem, the Linux 6.8 kernel is bringing some key improvements to the core networking co

    Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% - Phoronix
    gettergot
    gettergot 2024/01/12
  • 実践Immutable Data Model - 紙箱

    ランキング参加中プログラミング はじめに この記事では、Immutable Data Modelと呼ばれる設計手法をもとに、リレーショナル・データベースにおける、テーブル設計の話を書いています。また、今回の実践で利用する、別の考え方の背景を理解するために、Out of the tar pitという小論文の内容にも言及します。 「状態とは何か?」というややこしい話がたくさん出てきますし、データベースのテーブル設計についての話であることから、たくさんのSQLが出てきます。なので、データモデリングとか状態管理とか、特にSQLとかに興味がない人には面白くないと思います。 そのあたりに興味ある方は、読んでみて欲しいです。 Immutable Data Modelを、実際のアプリケーションで使うデータベースに採用するにあたり、どういう考え方で、どのようにテーブルを構成したか、自分なりの経験を書いていま

    実践Immutable Data Model - 紙箱
    gettergot
    gettergot 2024/01/10
  • 野良社内ツールと開発生産性、プラットフォーム・エンジニアリング - Runner in the High

    よくある野良の社内ツールは、開発生産性を向上させるための手段としてスポットで生まれることが多い。 たとえば、定期的に依頼されて手作業でキックしているバッチ処理を誰かがAPI化したり、それがCLIで実行できるようになったり、あるいは不特定多数の人々が手でやっている作業が有志で自動化されツールになるなど。そして社内の口コミや告知で伝搬され、使われていく。 出来の良い社内ツールは、野良だとしても開発チームが普段の開発プロセスのなかで意識したくない複雑性や実装の詳細をうまく抽象化し、認知負荷を下げる役割を果たしている。見方を変えれば、社内ツールはチーム・トポロジー*1でいうところのX-as-a-serviceインタラクション・モードの具象化のひとつだと言える。開発チームと社内ツールを開発する人間を社内ツールがインターフェイスとなって接続している。広い目線で見ると、これはプラットフォーム・エンジニア

    野良社内ツールと開発生産性、プラットフォーム・エンジニアリング - Runner in the High
    gettergot
    gettergot 2024/01/10
  • 【日本人エンジニア必携】英語命名規則の決定版 - Qiita

    弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 はじめに 英語での適切な命名は、コードの可読性や保守性を向上させるために重要です。適切な命名規則を守ることがコードの理解や共有において不可欠です。 英語での命名規則を学び、適切な命名を行うことで、コードの読みやすさや保守性を向上させ、チーム全体でのコードの理解を促進する手助けとなります。 この記事では、日エンジニア英語での命名規則を理解し、適切な命名を行うための指針を提供します。 命名フローチャート 変数 関数 クラス 1. 変数 1-1. boolean 1-1-1. 存在するかどうかのフラグ 名詞 + exists

    【日本人エンジニア必携】英語命名規則の決定版 - Qiita
    gettergot
    gettergot 2023/12/25
  • 開発生産性とどう向き合うか | DMM Meetup #39

    仮説検証サイクルを高速で回す為に、DMMポイントクラブ アプリチームが行っている取り組み | DMM iOS Meetup #2

    開発生産性とどう向き合うか | DMM Meetup #39
    gettergot
    gettergot 2023/12/23
  • Goを改善するためのGo Telemetry

    はじめに こんにちは!Google CloudでオブザーバビリティやSRE関連の担当をしているエンジニアです。この記事はGoアドベントカレンダーの22日目の記事です。 Goとオブザーバビリティ 私は業務でオブザーバビリティを中心として啓蒙活動や開発を行っているわけですが、その中で常に「改善にはまず計測が必要です」というメッセージをさまざまな方々にお伝えしています。 Goでは計測のための仕組みとして( testing.B あるいは go test -bench として知られる)ベンチマーク[1]や pprof が最初期から[2]用意されていて、パフォーマンス計測はかなり標準が充実した言語になっています。 そして近年もそれに満足せず、Goを改善するための計測の仕組みがいくつも提案されています。 たとえばruntime/metricsはdesign #37112で提案されてGo 1.16から導入

    Goを改善するためのGo Telemetry
    gettergot
    gettergot 2023/12/22
  • Announcing `async fn` and return-position `impl Trait` in traits | Rust Blog

    Announcing `async fn` and return-position `impl Trait` in traits The Rust Async Working Group is excited to announce major progress towards our goal of enabling the use of async fn in traits. Rust 1.75, which hits stable next week, will include support for both -> impl Trait notation and async fn in traits. This is a big milestone, and we know many users will be itching to try these out in their o

    Announcing `async fn` and return-position `impl Trait` in traits | Rust Blog
    gettergot
    gettergot 2023/12/22
  • プロンプト設計戦略  |  Google AI for Developers

    フィードバックを送信 プロンプト設計戦略 コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 プロンプト設計により、機械学習(ML)制御モデルの出力を初めて利用するユーザーでも、オーバーヘッドを最小限に抑えられます。プロンプトを慎重に作成することで、目的の結果を生成するようにモデルを調整できます。プロンプト設計は、特定のユースケースに合わせて言語モデルを適応させることをテストする効率的な方法です。 言語モデル、特に大規模言語モデル(LLM)は、単語間のパターンと関係を学習するために、膨大なテキストデータでトレーニングされています。テキスト(プロンプト)を受け取った言語モデルは、高度なオートコンプリート ツールのように、次に来ると思われるものを予測できます。したがって、プロンプトを設計する際は、モデルによる次の予測に影響を与える可能性のあるさまざまな要因を考慮し

    プロンプト設計戦略  |  Google AI for Developers
    gettergot
    gettergot 2023/12/20
  • ITS健保制覇攻略ーー補助がこんなにお得なのに意外と使われていない件 - KAYAC engineers' blog

    このエントリは【カヤック】面白法人グループ Advent Calendar 2023 の17日目の記事です。 はじめに こんにちは、今年のITS健保、ライブなどの抽選でどれも当選しなかった魏と申します。 ITS健保(関東ITソフトウェア健康保険組合)には様々なお得の施策がありますが、他の社員に聞いたら意外と知られていないのが多いようです。それを機に今回の記事でいくつかを軽く紹介します。 はじめに 保養施設 一番お得な「直営・通年・夏季・冬季保養施設」 抽選申込 空き照会申込 5000円/泊の補助がもらえる「契約保養施設」 ITS旅行センター契約保養施設 ラフォーレ倶楽部 10000円補助がもらえる「ITS旅行パック」 その他 健歩大会 利用料金が半分になる「スポーツクラブ」 さらにお得の小技 最後に 保養施設 保養施設 ITS健保で利用できる保養施設は6種類ありますが、メインの3つだけ紹介

    ITS健保制覇攻略ーー補助がこんなにお得なのに意外と使われていない件 - KAYAC engineers' blog
    gettergot
    gettergot 2023/12/19
  • sqlcとdockertestでデータベースを使ったテストを書こう | gihyo.jp

    Goにおけるデータベース操作とテスト Goでデータベースを操作する際には、標準パッケージであるdatabase/sqlGORM、entなどの様々な選択肢が存在します。多くのライブラリではGoのコードを定義してSQLを生成しますが、sqlcはSQLをコンパイルしてGoのコードを生成するのが特徴のライブラリです。 このアプローチには、最終的に実行されるSQLが明らかであることやデータベースとやりとりするためのデータ構造を自分で定義する必要がないことといったメリットがあります。また、コンパイル時にSQLを解析し型や引数名の間違いを検出できます。そしてなにより、非常にシンプルです。 記事では、sqlcの一歩進んだ使い方としてdockertestと組み合わせたテストの書き方について紹介します。dockertestとは、Dockerコンテナを立ち上げてテストを実行するための使いやすいコマンドを提供

    sqlcとdockertestでデータベースを使ったテストを書こう | gihyo.jp
    gettergot
    gettergot 2023/12/19
  • Introducing Solid Queue

    We’ve just open-sourced Solid Queue, a new backend for Active Job that we use in HEY to run about 1/3 of our roughly 18 million jobs per day. We’ll be moving more jobs in the coming days until we run HEY exclusively using Solid Queue. Besides regular job enqueuing and processing, Solid Queue supports delayed jobs, concurrency controls, pausing queues, numeric priorities per job, and priorities by

    Introducing Solid Queue
    gettergot
    gettergot 2023/12/19
  • Raft(分散合意アルゴリズム)について

    Raftについて Raftという分散合意アルゴリズムの紹介 論文: In Search of an Understandable Consensus ALgorithm (Extended Version) 注意 Raft三日目くらいの人が自分の理解をもとに(適当に)書いています いつも通り用語の使い方は怪しい Raftと分散合意のどちらも特別詳しい訳ではないので、ちゃんと知りたい人は上記論文や他の説明を参照することを推奨します Raftって何? ざっくりと 分散合意アルゴリズム Paxos(おそらく有名な分散合意アルゴリズム)の改良版的な位置づけ(?) 機能追加や性能向上ではなく__理解可能性__の改善 etcdというCoreOS/Dockerをクラスタ化するためのツールで採用されているのが有名? 詳しくは知らないですが... 分散合意アルゴリズム クラスタ内の全サーバに一貫性のあるステ

    Raft(分散合意アルゴリズム)について
    gettergot
    gettergot 2023/12/18
  • Wave Terminal

    An Open-Source, AI-Native, Terminal Built for Seamless Workflows

    Wave Terminal
    gettergot
    gettergot 2023/12/17