1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Dify×Notionで作るレシピ管理システム】レシピ検索・買うものリスト登録編

Posted at

生成AIを用いたワークフローが簡単に作れるDifyと、神タスク管理ツールであるNotionを連携させてレシピ管理システムを一日で作成したので備忘的に内容を説明します。

前回のレシピ登録機能に続いて、今回はレシピ管理システムの重要な機能である「レシピ検索」と「買うものリスト登録」機能について詳しく解説します。

実行結果

材料やレシピの単語を入力するとNotionからレシピを検索してくれます。

image.png

材料一覧を入力すると買うものリストにまとめて登録します。

image.png

image.png

レシピ検索機能の概要

image.png

レシピ検索機能は、ユーザーが入力したキーワードや条件に基づいて、Notionデータベースに保存されているレシピを検索し、その結果をLLMで整形して適切な結果を返します。

Notion検索用HTTPリクエスト

GETかと思いきやPOSTだったのでちょっとハマりました。

image.png

項目
POST https://api.notion.com/v1/databases/[NOTION_DATABASE_ID]/query
Authorization Bearer [NOTION_API_KEY]
Content-Type application/json
Notion-Version 2022-06-28
ボディ none

検索結果解析用LLMノード

検索した結果をLLMで解析し、ユーザーへ出力します。

image.png

材料登録機能の概要

image.png

材料登録機能は、ユーザーが入力したレシピの材料を買うものリストという別のNotionデータベースに登録します。

材料抽出用LLM

image.png

入力された材料一覧をLLMで整形します。

アレイに変換

image.png

入力された材料一覧のテキストをアレイに変換して、イテレーション(繰り返し処理)できるようにします。

イテレーション

image.png

イテレーションを用いてHTTPリクエストを材料ぶん実行します。

買い物リスト登録用HTTPリクエスト

繰り返し処理のアイテムを取るにはitemを変数として設定します。
エラーっぽい表示になりますが、普通に動きます。

image.png

項目
POST https://api.notion.com/v1/pages/
Authorization Bearer [NOTION_API_KEY]
Content-Type application/json
Notion-Version 2022-06-28
ボディ 以下に記載
{
  "parent": { "database_id": [NOTION_DATABASE_ID] },
  "properties": {
    "Name": {
      "title": [
        {
          "text": {
            "content": "材料名"
          }
        }
      ]
    }
  }
}

まとめ

これで一通り機能紹介は終わりです。今後も実際に使いながら機能追加したり修正したりすると思います。

みなさんも参考にDifyで遊んでみましょう!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?