Slide 1

Slide 1 text

苦労を「重ねて」 実装したのに 一掃された 2023年5月18日 レイヤード Meetup LT会 vol.1

Slide 2

Slide 2 text

楽しんでますか??

Slide 3

Slide 3 text

今日の大まかな流れ 1. 自己紹介 2. 流行りもの 3. 実現したいこと 4. 実際にやってみたこと 5. 衝撃を受けたこと 6. まとめ

Slide 4

Slide 4 text

自己紹介 大分(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さんやヌーラボさんのイベント、エンジニアカフェに出没します 柴尾 哲也(しばお てつや) 

Slide 5

Slide 5 text

流行りもの みなさん、生成AI周りの最新を追えていますか?

Slide 6

Slide 6 text

社内の状況としては ● 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つしかないし 運用している人いたら話しましょう

Slide 7

Slide 7 text

実現したいこと Input Output

Slide 8

Slide 8 text

実現したいこと Input ● Notion API ○ ブロック単位で取得 ○ 本文を取得 ○ CSVで保存(結果の確認用にブロック IDなど) ● OpenAI(Azure OpenAIでもいい) ○ Embeddings それらをPythonで実装

Slide 9

Slide 9 text

実際にやってみたこと ● Notionのデータの持ち方が厄介 ○ すべてのオブジェクトをブロックとして保持 ■ jq -c 'path(..)' or jq-searchkey を使って深さを確認

Slide 10

Slide 10 text

実際にやってみたこと ● 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出力できた

Slide 11

Slide 11 text

実現したいこと ● 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

Slide 12

Slide 12 text

実現したいこと Input Output

Slide 13

Slide 13 text

Notionから出力するところを改善したい 「LangChainとかLlamaIndexとか使ってみると楽になるんじゃない?」

Slide 14

Slide 14 text

LlamaIndexでやってみる Notion のコネクタと学習部分を作ってみる 簡単にするなら、これで全部 前処理が「\n\n」除去だけなので注意

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

まとめ ● 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といったライブラリは初心者にとって有益 ○ 有識者からすると前処理が不足していると感じることもある ○ 開発が盛んなので破壊的変更、 β版メソッドが使えなくなることもある

Slide 17

Slide 17 text

LlamaIndexで参考にしたものの 2023.03.23 https://dev.classmethod.jp/articles/llamaindex_with_notion-loader/ https://github.com/jerryjliu/llama_index/issues/3263

Slide 18

Slide 18 text

宣伝 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エンジニアが福岡に来ます

Slide 19

Slide 19 text

Thank you for your time 😊

Slide 20

Slide 20 text

Thank you for Bing Image Creator 😊