Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
asap
March 26, 2025
Programming
0
410
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
エンジニア達の「完全に理解した」Talk #63
の登壇資料になります。
asap
March 26, 2025
Tweet
Share
More Decks by asap
See All by asap
DeepSeek-R1の論文から読み解く背景技術
personabb
3
1k
Other Decks in Programming
See All in Programming
20260315 AWSなんもわからん🥲
chiilog
2
150
猫の手も借りたい!ので AIエージェント猫を作って社内に放した話 Claude Code × Container Lambda の Slack Bot "DevNeko"
naramomi7
0
260
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
390
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
500
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
TipKitTips
ktcryomm
0
170
Claude Codeログ基盤の構築
giginet
PRO
7
3.3k
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
930
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.9k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
290
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
AHC061解説
shun_pi
0
380
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
72
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
GraphQLとの向き合い方2022年版
quramy
50
14k
Building AI with AI
inesmontani
PRO
1
790
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
140
From π to Pie charts
rasagy
0
150
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
The untapped power of vector embeddings
frankvandijk
2
1.6k
Producing Creativity
orderedlist
PRO
348
40k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
150
Transcript
asap 英語 の私が、生成AIの力を借りて、 OSSに初コントリビュートした話
1 はじめに 自己紹介 asap AI・機械学習の理論に興味を持つエンジニア。 ZennでAI関連の技術記事を書いてます。 「asap zenn」で検索! @asap2650 ぜひ今アカウント作って登録してください
@asap2650
はじめに
3 はじめに はじめに OSSコントリビュート意外と簡単だったよ ついこの間初めてOSSにコントリビュートした超初心者の身ではありますが OSSへのコントリビュートは「ある程度」プログラミングができる人なら簡単だよ! 普段のコーディングとそんなに違いはなかったよ! ということをお話しできればと思います。 @asap2650
経緯
5 なんのリポジトリ? 経緯 @asap2650 https://github.com/langchain-ai/langchain-google Google CloudのVertexAIやGeminiなどをLangChainで 利用するための「langchain-google」というリポジトリ • VertexAI
Google Cloudが提供する機械学習全般を支援する プラットフォーム • Gemini ChatGPTのGoogle版 • LangChain 大規模言語モデル(LLM)を活用した アプリケーション開発を容易にするフレームワーク
6 OSSコントリビュートするに至った理由 経緯 @asap2650 RAGシステム開発の業務に必要だから! • ユーザが質問を入力 • LLMがRAGシステムをよびだす。 •
質問文から検索用のベクトルを作る • Dense Embedding Vector :文脈考慮での検索用 • Sparse Embedding Vector :単語での検索用 • Vector Store(DB)に保存された ドキュメント(+ベクトル)と類似度検索 • 検索結果をLLMに返して、それを元に回答させる 【RAGシステムとは】
7 OSSコントリビュートするに至った理由 経緯 @asap2650 RAGシステム開発の業務に必要だから! Google CloudのDBをベクトルストアとしたRAGのシステムを構築したい ↓ Embeddingsモデルによるベクトル化はできるけど、ハイブリット検索が動かない!? ↓
バグじゃん!!どうしよ・・・ ↓ マイナーな機能だから、自分が修正するしかない・・・
8 どんなバグ? 経緯 @asap2650 チュートリアル通りに実施しても Sparse Embedding Vectorがベクトルストアに格納されない https://python.langchain.com/docs/integrations/vectorstores/google_vertex_ai_vector_search/#hybrid-search
バグの原因
10 どんなバグ? バグの原因 @asap2650 データ保存部分にSparse Embedding Vectorに関しての 記述がないバグ
Issueを立てる
12 Issueを立てる Issueを立てる @asap2650 英語ゴミ人間なので OpenAI o1先生に助けてもらいました https://github.com/langchain-ai/langchain-google/issues/720 下記をプロンプトに入れて依頼 •
Issue立てるのが初めてであること • 英語が雑魚なこと • バグを発見した経緯 • バグを含むコード • 修正案
13 Issueを立てる Issueを立てる @asap2650 ちゃんと記載すればメンテナーの方は見てくれる ちゃんと記載しないと、後回しにされるissueも数多くあります。 コメントもらったらコードの修正・PRを実施
コード修正・PR
15 コード修正 コード修正・PR @asap2650 READMEをよく読むこと Langchain-googleの場合は やり方を全部説明してくれていた。 参考になると思うので紹介します。
16 コード修正 コード修正・PR @asap2650 “fork and pull request” workflowを利用する 元のリポジトリを自分のアカウントにForkする
↓ Forkしたリポジトリをローカルにクローン ↓ コードの修正、テスト、フォーマット、リンティングを実施し、リポジトリにpush ↓ 元リポジトリに対してpull requestを行う 詳細:https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project
17 Pull Requestを実施 コード修正・PR @asap2650 gpt-4oの力を借りながら、テンプレートに合わせて記載 PRのテンプレートが用意されている場合もあるので、そちらに合わせる(PULL_REQUEST_TEMPLATE.md) テンプレートがなければ、他の方のPRを参考にすれば良い アイコン載ると嬉しい!
18 まとめ やることは普通のコーディングと同じ 1 S A I R U 英語
× の私が、生成AIの力を借りて、OSSに初コントリビュートした話 英語ができなくても、生成AIでIssueをPRは作れる 2 コントリビュートを歓迎してくれるリポジトリ最高 3