pair-programming with AI

Claude Code を使い dbt model を Test-First で開発する

このポストについて Claude Code による dbt model 開発を test-first でやったらいい感じだったのでそれを紹介する。 実際に dbt model におけるある機能を test-first で開発するということをやってみる。 なんかしっくりこない Claude Code による dbt model 開発 現在本業でデータ基盤の移行を行っており、dbt model をたくさん作る必要がある。 Claude Code を使ってこの作業が楽にならないかなーと考えていたんだけど、それがなかなかしっくりこない。 なぜしっくりこないかというと、以降に際して dbt model を開発するために多様なコンテキストが必要になってくるということだと認識している。 例えばある1つの ETL 処理を dbt model に移行するにあたり、次のようなコンテキストを使いたい。 旧データ基盤の実装コード (Glue Job, Athena など) OpenMetadata に存在する旧データ基盤のメタデータ情報 社内の data modeling のルール (命名、その他) 参考にできそうな移行済み model 移行先である Databricks の仕様 などなど… このあたりのコンテキストをいい感じに整理して Claude Code が利用できるようにすべきなんだけど、その整理がまだ進んでいない。 (やれよって話なのはわかっています…) というので Claude Code がバシッとハマるという感覚をまだ得られずにいた。 dbt の unit tests で、データ基盤移行でちょっと複雑な処理を dbt model に実装しないといけなくなり、これまでやっていなかった dbt の unit test を導入することにした。 ...

10月 14, 2025 · soonraah
AI frog graph network with parrot

読書メモ: LangChainとLangGraphによるRAG・AIエージェント[実践]入門

書籍について 西見 公宏; 吉田 真吾; 大嶋 勇樹. LangChainとLangGraphによるRAG・AIエージェント[実践]入門 エンジニア選書. 株式会社技術評論社. タイトルのとおりで RAG や AI エージェントについて書かれた本。 出版は2024年11月。 LangChain や LangGraph を使ったサンプルコードが豊富に載っている。 著者の方は3名ともジェネラティブエージェンツ社の方で、AI エージェントを扱う会社らしい。 前作として『ChatGPT/LangChainによるチャットシステム構築[実践]入門』という本もあり、本書の何章かは前作の内容を引き継いでアップデートしているとのこと。 個人的にはこれまで LLM や LangChain など追えていなかったので勉強になったし、自分でコードを写経して動かしてみるのがとても面白かった。 AI エージェントまわりの技術を実感したい人におすすめ。 ちなみにサンプルコードを動かすためには OpenAI をはじめとする様々なサービスに登録する必要があり、料金が発生するものも含まれている。 このポストについて 書籍「LangChainとLangGraphによるRAG・AIエージェント[実践]入門」を読んで、面白かったので内容をまとめる。 各章ごとに内容を挙げていってもいいのだが、ここではそうはせず、本書に登場する言葉や概念をまとめていくことにする。 ちなみにこの記事で紹介するプロンプト等は書籍そのままではなく、少し変更している。 実際のプロンプトを知りたい場合は書籍を読んでください。 プロンプトエンジニアリング これは知っている人も多いだろう。 プロンプトとは主に自然言語で記述される、LLM に与える命令のこと。 LLM をアプリケーションに組み込む場合はプロンプトはテンプレート化し、入力データをそれに差し込む形となる。 LLM は必ずしも人間の出す命令に対して望ましい回答を出力してくれるわけではない。 望ましい回答を出力してもらえるよう、プロンプトを工夫するテクニックがプロンプトエンジニアリングである。 本書ではプロンプトエンジニアリングの具体的な手法として次の3つが紹介されていた。 ちなみにここで例として示している出力は実際に OpenAI の LLM gpt-4o-mini で出力したものである。 Zero-shot プロンプティング 簡単なタスクであれば、特に追加の情報がなくとも (=Zero-shot) 望ましい回答を得ることができる。 system: 次の日本酒のレビューをポジティブ・ネガティブ・中立のどれかに分類してください。 user: ふくよかで芳醇な香り 出力 ポジティブ Few-shot プロンプティング より複雑なタスクになった場合、デモンストレーションを与えることで回答の精度を高めることができる。 いくつかのデモンストレーションを示すため、Zero-shot ではなく Few-shot である。 ...

3月 2, 2025 · soonraah