Slide 1

Slide 1 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI を (無理やり) ⽇本語で動かしてみた 2024/10/17 HeatWavejp Meetup #10 HeatWavejp ⼭﨑 由章

Slide 2

Slide 2 text

Copyright © 2024 HeatWavejp All Rights Reserved. 祝! HeatWave GenAIの多⾔語対応!! (少し前までは、英語のみ対応していました)

Slide 3

Slide 3 text

Copyright © 2024 HeatWavejp All Rights Reserved. プレスリリースを⾒ると

Slide 4

Slide 4 text

Copyright © 2024 HeatWavejp All Rights Reserved.

Slide 5

Slide 5 text

Copyright © 2024 HeatWavejp All Rights Reserved. 「多⾔語サポート」と書いてある!

Slide 6

Slide 6 text

Copyright © 2024 HeatWavejp All Rights Reserved. Oracle CloudWorld 2024での 発表資料では

Slide 7

Slide 7 text

Copyright © 2024 HeatWavejp All Rights Reserved.

Slide 8

Slide 8 text

Copyright © 2024 HeatWavejp All Rights Reserved. ⽇本語が含まれている!

Slide 9

Slide 9 text

Copyright © 2024 HeatWavejp All Rights Reserved. ドキュメントを⾒ると

Slide 10

Slide 10 text

Copyright © 2024 HeatWavejp All Rights Reserved. 出典:https://dev.mysql.com/doc/heatwave/en/mys-hw-genai-supported-models.html

Slide 11

Slide 11 text

Copyright © 2024 HeatWavejp All Rights Reserved. 出典:https://dev.mysql.com/doc/heatwave/en/mys-hw-genai-supported-models.html

Slide 12

Slide 12 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave 9.0.1-u1 からサポートされている ⾔語のリストに、⽇本語が⼊っている!!

Slide 13

Slide 13 text

Copyright © 2024 HeatWavejp All Rights Reserved. しかし、よく⾒ると、、、

Slide 14

Slide 14 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave In-Database LLMとして サポートしている⾔語のリストには ⽇本語が⼊っていない・・・ ※OCI Generative AI Serviceと連携して、cohere.command-r-plus もしくは cohere.command-r-16k を使えば⽇本語は既に公式サポートされています。

Slide 15

Slide 15 text

Copyright © 2024 HeatWavejp All Rights Reserved. つまり、現時点ではRAGに使うドキュメントを エンベディングする時に使うモデルは ⽇本語を公式にサポートしているが、

Slide 16

Slide 16 text

Copyright © 2024 HeatWavejp All Rights Reserved. テキストを⽣成する時に使うLLMは ⽇本語を(公式には) サポートしていない状態 ※テキストを⽣成する時に使っているLLM⾃体に依存した課題

Slide 17

Slide 17 text

Copyright © 2024 HeatWavejp All Rights Reserved. ですが、、、

Slide 18

Slide 18 text

Copyright © 2024 HeatWavejp All Rights Reserved. ⽇本語で動かせる⽅法を 2種類⾒つけました!

Slide 19

Slide 19 text

Copyright © 2024 HeatWavejp All Rights Reserved. 今⽇はその⽅法を紹介します!

Slide 20

Slide 20 text

Copyright © 2024 HeatWavejp All Rights Reserved. まずは、HeatWave GenAIの基本的な使い⽅

Slide 21

Slide 21 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の基本 • 英語でのテキスト⽣成例 mysql> set @query="What is the MySQL?"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nMySQL is an open-source relational database management system (RDBMS) that allows you to store, manage, and retrieve data efficiently. It's one of the most popular databases used in web applications, especially for building dynamic websites and web services.\n\nHere are some key features and benefits of MySQL:\n\n1. **Relational database**: MySQL stores data in tables with well-defined relationships between them, making it easy to query and manipulate data.\n2. **Open-source**: MySQL is free and open-source, which means you can use it without any licensing fees or restrictions.\n3. **Cross-platform**: MySQL can run on various operating systems, including Windows, macOS, and Linux.\n4. **High-performance**: MySQL is designed for high-performance and scalability, making it suitable for large-scale applications.\n5. **SQL support**: MySQL supports standard SQL (Structured Query Language) commands, which makes it easy to learn and use.\n\nMySQL is widely used in various industries, including:\n\n1. Web development: MySQL is often used as the backend database for web applications, such as content management systems, e-commerce platforms, and social media sites.\n2. Enterprise software: MySQL is used by many enterprise-level applications, including CRM systems, ERP systems, and other business-critical software.\n3. Mobile apps: MySQL can be used to store data for mobile apps, especially those that require complex data relationships or large-scale data storage.\n\nSome popular use cases for MySQL include:\n\n1. E-commerce platforms\n2. Social media platforms\n3. Content management systems (CMS)\n4. Online banking and finance applications\n5. Mobile apps with complex data requirements\n\nOverall, MySQL is a powerful and versatile database solution that's widely used in many industries and applications."} 1 row in set (22.58 sec)

Slide 22

Slide 22 text

Copyright © 2024 HeatWavejp All Rights Reserved. 質問を⽇本語にしてみる

Slide 23

Slide 23 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の実⾏例 • ⽇本語で質問、”language”パラメーターに”en”を指定 mysql> set @query="MySQLについて説明して下さい"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nI'd be happy to explain MySQL!\n\n**What is MySQL?**\n\nMySQL is an open-source relational database management system (RDBMS) that allows you to store, manage, and retrieve data in a structured and organized way. It's one of the most popular databases used in web applications, especially for building dynamic websites and web services.\n\n**Key Features:**\n\n1. **Relational Database Management System**: MySQL is based on the relational model, which means it stores data in tables with well-defined relationships between them.\n2. **SQL Support**: MySQL supports SQL (Structured Query Language), a standard language for managing and manipulating data in relational databases.\n3. **Scalability**: MySQL can handle large amounts of data and scale horizontally by adding more servers to the cluster.\n4. **High Performance**: MySQL is optimized for high-performance queries, making it suitable for applications that require fast data retrieval and processing.\n5. **Security**: MySQL has robust security features, including user authentication, access control, and encryption.\n\n**How does MySQL work?**\n\nHere's a simplified overview of how MySQL works:\n\n1. **Data Storage**: Data is stored in tables, which are organized into databases.\n2. **SQL Queries**: Users submit SQL queries to retrieve or modify data in the database.\n3. **Query Execution**: The MySQL server executes the query by reading and processing the data from the storage engine.\n4. **Storage Engine**: The storage engine manages the physical storage of data on disk, providing features like indexing, caching, and logging.\n\n**Types of MySQL Databases:**\n\n1. **MyISAM**: A traditional storage engine that provides good performance for read-heavy workloads.\n2. **InnoDB**: A transactional storage engine that supports ACID transactions and is suitable for applications with high concurrency.\n3. **Memory (HEAP)**: A storage engine optimized for memory-based storage, providing fast query execution.\n\n**Common MySQL Use Cases:**\n\n1. **Web Applications**: MySQL is often used as the backend database for web applications, such as content management systems, e-commerce platforms, and social media sites.\n2. **Business Intelligence**: MySQL can be used to store and analyze large datasets for business intelligence and data analytics purposes.\n3. **Enterprise Systems**: MySQL is used in enterprise environments to manage complex data relationships and provide high-performance query execution.\n\nI hope this introduction to MySQL has been helpful! Let me know if you have any specific questions or need further clarification on any of these topics."} 1 row in set (31.58 sec)

Slide 24

Slide 24 text

Copyright © 2024 HeatWavejp All Rights Reserved. 質問に対して⽇本語での回答をお願いする

Slide 25

Slide 25 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の基本 • ⽇本語で質問、”language”パラメーターに”en”を指定 mysql> set @query=“MySQLについて⽇本語で説明して下さい"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nI'd be happy to explain MySQL in Japanese!\n\n**MySQL**\n\nMySQLは、世界で最も⼈気の⾼いオープンソースのRDBMS(Relational Database Management System)です。1995年にMichael WideniusとDavid Axmarkによって開発されました。\n\n**特徴**\n\n* **Free and Open-source**: MySQLは無料で使⽤できる ため、個⼈や企業問わず広く使われています。\n* **Cross-platform**: Windows、Linux、macOSなど多くのプラットフォームに対応しています。\n* **Relational Database**: MySQLは関係データベース管理システムであり、テーブルに格納されたデータを関係づいて管理します。\n* **SQL support**: MySQLはSQL (Structured Query Language)をサポートしており、データの操作や取得を⾏うことができます。\n\n**機能**\n\n* **Data Storage**: MySQLはデータをスト レージとして保存し、⾼速にアクセスすることができます。\n* **Query Language**: SQLを使⽤してデータを操作や取得することができます。\n* **Indexing**: イ ンデックスを使⽤してデータの検索速度を向上させることができます。\n* **Security**: MySQLにはセキュリティー機能があり、パスワードや権限設定などでアク セス制御を⾏うことができます。\n\n**⽤途**\n\n* **Web Application**: MySQLはWebアプリケーションに広く使われています。例えば、E-commerceサイトや SNSなどのデータベースとして使⽤されます。\n* **Enterprise Software**: MySQLは企業向けソフトウェアのデータベースとしても使⽤されます。\n* **Personal Use**: MySQLは個⼈でも⾃由に使⽤することができます。\n\n**インストール**\n\nMySQLをインストールするには、以下の⼿順で⾏うことができます。\n\n1. ダウンロード:MySQLの公式サイトからダウンロードします。\n2. インストール:インストーラーを実⾏し、設定を⾏います。\n3. 設定: MySQLの設定ファイル (my.cnf)を編集して、パスワードやポート番号などを設定します。\n\n**注意**\n\n* **Security**: MySQLにはセキュリティー機能がありますが、パスワードや 権限設定などでアクセス制御を⾏うことが重要です。\n* **Backup**: MySQLのデータを定期的にバックアップすることをお勧めします。\n\n以上、MySQLについ ての⽇本語での説明です。MySQLは⾮常に便利なRDBMSであり、多くの企業や個⼈で使⽤されています。"} 1 row in set (33.60 sec)

Slide 26

Slide 26 text

Copyright © 2024 HeatWavejp All Rights Reserved. ⽇本語で質問し、⽇本語の回答を得ました

Slide 27

Slide 27 text

Copyright © 2024 HeatWavejp All Rights Reserved. ちなみに、こんなパターンもありました

Slide 28

Slide 28 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の基本 • ⽇本語で質問、”language”パラメーターに”en”を指定 mysql> set @query=“MySQLとは何ですか?"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nMySQLは、世界で最も⼈気の⾼いオープンソースのリレーシャトル管理システム(RDBMS:Relational Database Management System)です。 MySQLは、 データベースを管理し、クエリー(SQL)を実⾏してデータを取得、更新、削除することができます。\n\nMySQLは、Webアプリケーションやゲーム、企業のイン tranetなど、多くの分野で使⽤されています。主な特徴として、以下のような点が挙げられます。\n\n* オープンソース: MySQLは、GPL(GNU General Public License)というオープンソースライセンスのもとで配布されていて、⾃由に使うことができます。\n* ⾼速性: MySQLは、⾼性能のクエリー実⾏機能を備えており、 ⼤量のデータに対しても⾼速にアクセスすることができます。\n* スカラー: MySQLは、多くのプラットフォーム(Windows、Linux、macOSなど)で動作し、多 くのプログラミング⾔語(PHP、Python、Javaなど)との統合が可能です。\n\nMySQLは、世界中の企業や個⼈で広く使⽤されており、Webアプリケーションや ゲーム開発、データ分析などの分野で重要な役割を果たしています。"} 1 row in set (19.20 sec)

Slide 29

Slide 29 text

Copyright © 2024 HeatWavejp All Rights Reserved. 2つ⽬の⽅法

Slide 30

Slide 30 text

Copyright © 2024 HeatWavejp All Rights Reserved. ”language”パラメーターに”ja”を指定する

Slide 31

Slide 31 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の実⾏例 • ⽇本語で質問、”language”パラメーターに”ja”を指定 mysql> set @query=“MySQLについて説明して下さい"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "ja", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nMySQLは、世界で最も⼈気の⾼いオープンソースのRDBMS(Relational Database Management System)です。1995年にMichael WideniusとDavid Axmark によって開発されました。\n\n MySQLは、SQL(Structured Query Language)を使⽤してデータベースを管理することができます。主にWebアプリケーションや 企業のインtranetで使⽤されています。\n\nMySQLの特徴として、以下のような点が挙げられます。\n\n* オープンソース: MySQLはオープンソースソフトウェア であり、無料でダウンロードして使⽤することができます。\n* スケーラビリティ: MySQLは⼤規模なデータベースを管理することができ、⼤量のトラフィックに 対応することができます。\n* セキュリティー: MySQLにはセキュリティー機能が充実しており、パスワードや暗号化されたデータを安全に保存することができま す。\n* プログラミング⾔語: MySQLは多くのプログラミング⾔語(例えばPHP、Python、Javaなど)との互換性があります。\n\n MySQLの主要な機能として、 以下のような点が挙げられます。\n\n* データベースの作成と管理\n* テーブルやインデックスの作成\n* クエリーの実⾏(SELECT、INSERT、UPDATE、 DELETE)\n* トランザクションの管理\n* セキュリティー機能(パスワード、暗号化)\n\n MySQLは、Webアプリケーションや企業のインtranetで広く使⽤され ています。例えば、FacebookやTwitterなどのSNS、eBayやAmazonなどのECサイトなどがMySQLを使⽤しています。\n\n以上、MySQLについて簡単に説明しまし た。詳細な情報については、公式ドキュメントやネット上の資料を参照してください。 "} 1 row in set (25.51 sec)

Slide 32

Slide 32 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の実⾏例 • ⽇本語で質問、”language”パラメーターに”ja”を指定 mysql> set @query=“MySQLとは何ですか?"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "ja", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nMySQLは、関係データベース管理システム(RDBMS)の⼀種です。世界で最も広く使われているオープンソースのRDBMSであり、Webアプリケーションや 企業の情報系システムなどに使⽤されています。 MySQLは、データベースを管理し、クエリーを実⾏してデータを取得することができます。また、多くのプログラ ミング⾔語で接続可能です。"} 1 row in set (8.87 sec)

Slide 33

Slide 33 text

Copyright © 2024 HeatWavejp All Rights Reserved. ⽇本語で質問し、⽇本語の回答を得ました

Slide 34

Slide 34 text

Copyright © 2024 HeatWavejp All Rights Reserved. (本⽇時点では⾮公式な⽅法ですが) HeatWave GenAIを使って⼿軽に⽇本語で LLMを使って遊べます♪

Slide 35

Slide 35 text

Copyright © 2024 HeatWavejp All Rights Reserved. おまけ

Slide 36

Slide 36 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWavejpについて質問してみた

Slide 37

Slide 37 text

Copyright © 2024 HeatWavejp All Rights Reserved. HeatWave GenAI の実⾏例 • ⽇本語で質問、”language”パラメーターに”ja”を指定 mysql> set @query=“HeatWavejpについて教えて下さい"; Query OK, 0 rows affected (0.00 sec) mysql> select sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "ja", "max_tokens", 8000))\G *************************** 1. row *************************** sys.ML_GENERATE(@query, JSON_OBJECT("task", "generation", "model_id", "llama3-8b-instruct-v1", "language", "en", "max_tokens", 8000)): {"text": "\n\nHeatWave.jpは、2020年に創業した⽇本のIT企業です。主に、AIを活⽤したソリューションを提供しています。\n\nHeatWave.jpの代表的なサービスとして、 以下のようなものがあります。\n\n1. AIパーソナライゼーション:顧客の購買履歴や⾏動データを分析し、個々のユーザーに最適なコンテンツを提案するAI技術。 \n2. コンテンツ⽣成:AIを使⽤して、⽂章や画像などを⾃動⽣成するサービス。\n3. マルチチャネルマーケティング:複数のチャネル(例えば、SNS、メールマガ ジン、LINE)で同時にコンテンツを配信することができるサービス。\n\nHeatWave.jpは、AI技術を活⽤して、企業のマーケティングやコミュニケーションをより 効果的に⾏うことを⽬指しています。 "} 1 row in set (14.92 sec)

Slide 38

Slide 38 text

Copyright © 2024 HeatWavejp All Rights Reserved. 「HeatWave.jpは、 2020年に創業した⽇本のIT企業です。」 🤔🤔🤔🤔🤔🤔🤔

Slide 39

Slide 39 text

Copyright © 2024 HeatWavejp All Rights Reserved. ハルシネーションって、怖いですねぇ〜 ※HeatWave GenAIでは、ハルシネーションを抑えるためにRAGも実現できます

Slide 40

Slide 40 text

Copyright © 2024 HeatWavejp All Rights Reserved. ご清聴ありがとうございました!

Slide 41

Slide 41 text

Copyright © 2024 HeatWavejp All Rights Reserved.