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
20230518_苦労を重ねて実装して実装したのに一掃されたこと_
Search
midnight480
May 18, 2023
Technology
0
150
20230518_苦労を重ねて実装して実装したのに一掃されたこと_
Pythonも書けない、OpenAIもよくわからない初学者が雰囲気でLlamaIndex触った話です
midnight480
May 18, 2023
Tweet
Share
More Decks by midnight480
See All by midnight480
20240626_SAGASmartCommunity_JAWS-UG佐賀紹介資料
midnight480
1
12
20240601_Cloudflare Accessで簡単にプライベートの資源にアクセス
midnight480
1
29
20240322_SAGASmartCommunity_JAWS-UG佐賀紹介資料
midnight480
0
17
20240607_IT/Webエンジニアの『ゾッ』とする話
midnight480
0
22
20240601_Cloudflare Accessで簡単にプライベートの資源にアクセス
midnight480
1
20
20240322_SAGASmartCommunity_JAWS-UG佐賀紹介資料 #SSC
midnight480
1
250
20240319_JBUG#0
midnight480
0
64
Try RedShift Serverless AI Scalling
midnight480
0
410
20231216_JAWS-UG_Fukuoka_#16_S3AccessGrants
midnight480
0
62
Other Decks in Technology
See All in Technology
Swift Testingのconfirmationを コードリーディング/Dive into Swift Testing confirmation
laprasdrum
2
260
o1のAPIで実験してみたが 制限きつすぎて辛かった話
pharma_x_tech
0
210
Envoy External AuthZとgRPC Extensionを利用した「頑張らない」Microservices認証認可基盤
andoshin11
0
260
Oracle Autonomous Database:サービス概要のご紹介
oracle4engineer
PRO
1
7.1k
Segment Anything Model 2
tenten0727
3
710
Next.js のページ遷移を全力で止める
ypresto
7
3.3k
なにもしてないのにNew Relicのデータ転送量が増えていたときに確認したこと
tk3fftk
2
230
『GRANBLUE FANTASY: Relink』最高の「没入感」を実現するカットシーン制作手法とそれを支える技術
cygames
1
140
JEP 480: Structured Concurrency
aya_ebata
0
130
とあるOSSを継続可能にするための取り組みについて / OSS Refactoring Process
bun913
1
210
Developer Experienceを向上させる基盤づくりの取り組み事例集
coconala_engineer
0
150
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
180
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
How to Think Like a Performance Engineer
csswizardry
16
960
How to name files
jennybc
75
98k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
1
54
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.6k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
227
52k
Facilitating Awesome Meetings
lara
49
6k
Building a Modern Day E-commerce SEO Strategy
aleyda
36
6.8k
Typedesign – Prime Four
hannesfritz
39
2.3k
Designing for Performance
lara
604
68k
Transcript
苦労を「重ねて」 実装したのに 一掃された 2023年5月18日 レイヤード Meetup LT会 vol.1
楽しんでますか??
今日の大まかな流れ 1. 自己紹介 2. 流行りもの 3. 実現したいこと 4. 実際にやってみたこと 5.
衝撃を受けたこと 6. まとめ
自己紹介 大分(22年) → 東京(11年) → 福岡(2021.11~)→ 佐賀(2023.9予定?) midnight480 midnight480 midnight480
https://astro.midnight480.com/ • JAWS-UG (Japan AWS - User Group ) ◦ 佐賀支部 - 運営 ◦ 福岡支部 - 運営支援 ◦ 大分支部 - 福岡出張所 • AWS Startup Community ◦ 福岡運営 • Microsoft Startup Tech Community New!! ◦ 運営 ほかにもJagu'e'r 九州分科会(GoogleとNDAが必要)に参加したり、 Fusicさんやヌーラボさんのイベント、エンジニアカフェに出没します 柴尾 哲也(しばお てつや)
流行りもの みなさん、生成AI周りの最新を追えていますか?
社内の状況としては • OpenAI ◦ ChatGPT Plus を全社員 ◦ Platform 側のOrgにMember招待
▪ Opt Out申請 ▪ GPT-4 API 申請 ▪ Plugin申請 • Azure OpenAI Service ◦ AzureAD側整備(セキュリティグループ) ▪ 国内外の社内利用者 ◦ GPT-4申請、DALL・E申請、Codex申請 • GitHub Copilot ◦ 手続きまとめ User 管理の悩ましい Owner と Readerの2つしかないし 運用している人いたら話しましょう
実現したいこと Input Output
実現したいこと Input • Notion API ◦ ブロック単位で取得 ◦ 本文を取得 ◦
CSVで保存(結果の確認用にブロック IDなど) • OpenAI(Azure OpenAIでもいい) ◦ Embeddings それらをPythonで実装
実際にやってみたこと • Notionのデータの持ち方が厄介 ◦ すべてのオブジェクトをブロックとして保持 ▪ jq -c 'path(..)' or
jq-searchkey を使って深さを確認
実際にやってみたこと • Azure でやってみる ◦ Azure App Service + Blob
Storage ▪ デプロイできず断念 ◦ Azure Function + Blob Storage Service ▪ デプロイまでは出来たが、 Blob Storageに出力されず断念 • AWS でやることにする ◦ AWS Lambda + S3 ▪ AWS CDK v2のLambdaのデプロイ手間で断念 ▪ Serverless FrameworkでデプロイしてS3にCSV出力できた
実現したいこと • OpenAI(Azure OpenAIでもいい) ◦ Embeddings ▪ Azure公式Docsに従えば実現できた( Google Colab上)
• text-embedding-ada-002 はダメで(環境要因?) • text-search-curie-doc-001 だとできた https://learn.microsoft.com/ja-jp/azure/cognitive-services/openai/tutorials/embeddings
実現したいこと Input Output
Notionから出力するところを改善したい 「LangChainとかLlamaIndexとか使ってみると楽になるんじゃない?」
LlamaIndexでやってみる Notion のコネクタと学習部分を作ってみる 簡単にするなら、これで全部 前処理が「\n\n」除去だけなので注意
None
まとめ • Azure Functionのデプロイは簡単だった ◦ func new –name ${DIrectory} –template
“Timer trigger” ▪ AWSで言えば、AWS Lambda + Evnetbridge Rulesをひと纏め • AWS CDK でLambda(Pythonと追加モジュール)は少し手間で断念 ◦ https://aws.amazon.com/jp/blogs/news/lambda-managed-by-cdk/ • Serverless FrameworkではDockerあれば簡単 ◦ Build時にrequirements.txtを見てAssetを作成する過程でDocker内で処理する • LangChainやLlamaIndexといったライブラリは初心者にとって有益 ◦ 有識者からすると前処理が不足していると感じることもある ◦ 開発が盛んなので破壊的変更、 β版メソッドが使えなくなることもある
LlamaIndexで参考にしたものの 2023.03.23 https://dev.classmethod.jp/articles/llamaindex_with_notion-loader/ https://github.com/jerryjliu/llama_index/issues/3263
宣伝 2023/05/24(水) 19:00 〜 21:00 https://jawsug-saga.doorkeeper.jp/events/155541 2023/06/17(土) 13:00 〜 17:00 https://jawsug-saga.doorkeeper.jp/events/155542 2023/10/7(土)
JAWS Festa 2023 in Kyushu https://jft2023.jaws-ug.jp/ 8/19(土)にもクラウド女子会・佐賀・長崎合同で予定 全国からAWSエンジニアが福岡に来ます
Thank you for your time 😊
Thank you for Bing Image Creator 😊