Skip to content

Commit

Permalink
docs: add Japanese README (baidubce#461)
Browse files Browse the repository at this point in the history
I created Japanese translated README.
  • Loading branch information
eltociear authored and yinjiaqi committed Sep 4, 2024
1 parent f7a3f44 commit 4def90e
Show file tree
Hide file tree
Showing 3 changed files with 278 additions and 2 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
![Supported OSs](https://img.shields.io/badge/os-linux%2C%20win%2C%20mac-yellow.svg)
</div>

简体中文 | [English](./README_en.md)
简体中文 | [English](./README_en.md) | [日本語](./README_ja.md)

<br>

Expand Down
2 changes: 1 addition & 1 deletion README_en.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
![Supported OSs](https://img.shields.io/badge/os-linux%2C%20win%2C%20mac-yellow.svg)
</div>

[简体中文](./README.md) | English
[简体中文](./README.md) | English | [日本語](./README_ja.md)

<br>

Expand Down
276 changes: 276 additions & 0 deletions README_ja.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,276 @@
<div align="center">
<img src='docs/image/logo.png' alt='logo' width='700' >
<br>

[![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](LICENSE)
![Supported Python versions](https://img.shields.io/badge/python-3.9+-orange.svg)
![Supported OSs](https://img.shields.io/badge/os-linux%2C%20win%2C%20mac-yellow.svg)
</div>

[English](./README_en.md) | 日本語

<br>


## AppBuilder SDKとは?

Baidu AI Cloud Qianfan AppBuilder SDKは、[Baidu AI Cloud Qianfan AppBuilder](https://appbuilder.cloud.baidu.com/)によって提供されるAIネイティブアプリケーション開発者向けの「ワンストップ開発ツール」です。

Baidu AI Cloud Qianfan AppBuilder-SDKは、AIアプリケーション開発者向けに以下の基本機能を提供します:

1. 利用

- 大規模言語モデルを利用し、Baidu AI Cloud Qianfan大規模モデルプラットフォームで自由にモデルにアクセスし、プロンプトを開発および最適化します。

- 機能コンポーネントを統合し、Baiduのエコシステムから提供される40以上の高品質なグループを提供し、エージェントアプリケーションに力を与えます。

- AIネイティブアプリケーションを統合し、[Baidu AI Cloud Qianfan AppBuilderプラットフォーム](https://console.bce.baidu.com/ai_apaas/app)で公開されたAIネイティブアプリケーションにAppBuilderClientを通じてアクセスおよび管理し、エンドクラウドコンポーネントをリンクするためにローカル関数を登録します。

2. オーケストレーション

- 知識フローをオーケストレーションおよび管理し、KnowledgeBaseを通じて知識ベースを管理し、文書および知識スライスの作成、読み取り、更新、削除(CRUD)操作を実行し、Baidu AI Cloud Qianfan AppBuilderプラットフォームと共に業界グレードのRAGアプリケーションを開発します。

- ワークフローをオーケストレーションおよび自動化し、`Message``Component``AgentRuntime`などの多層ワークフロー抽象を提供し、ワークフローのオーケストレーションを実現し、LangChainやOpenAIなどの業界エコシステム機能と統合します。

3. 監視
- 開発者が生産環境で使用するための可視化トレースおよび詳細なデバッグログなどの監視ツールを提供します。

4. デプロイメント

- AgentRuntimeは、FlaskおよびGunicornに基づくAPIサービスとしてデプロイメントをサポートします。
- AgentRuntimeは、Chainlitに基づく対話型フロントエンドアプリケーションとしてデプロイメントをサポートします。
- プログラムをBaidu Cloudに迅速にデプロイし、パブリックネットワークAPIサービスを提供し、AppBuilderのワークフロー機能と統合するためのappbuilder_bce_deployツールを提供します。


## どのようにインストールしますか?

#### Baidu AI Cloud Qianfan AppBuilder SDKの最新バージョンは0.9.1(2024-07-25)です

Baidu AI Cloud Qianfan AppBuilder SDKのリリースノートについては、[バージョン説明](/docs/quick_start/changelog.md)をご覧ください。

- 最新の安定バージョンの`Python`をインストールすることをお勧めします。

```bash
python3 -m pip install --upgrade appbuilder-sdk
```
- `Java`および`Go`バージョンのインストールや`Docker`イメージの使用については、[インストール手順](/docs/quick_start/install.md)をご覧ください。


## 最初のAIネイティブアプリケーションをすぐに開始しましょう!

- `>=3.9`のPython環境に`appbuilder sdk`をインストールし、このエンドツーエンドアプリケーションの例を使用してください。
- 例では試用トークンが提供されていますが、アクセスとQPSが制限されています。正式な使用には個人のトークンに置き換えてください。

### 1. 大規模言語モデル
- `Playground`コンポーネントは自由に呼び出すことができます。Baidu AI Cloud Qianfanモデルプラットフォームで許可された任意のモデルに対して、プロンプトテンプレートとモデルパラメータをカスタマイズできます。

#### コード例

```python
import appbuilder
import os

# 環境変数にTOKENを設定します。以下のTOKENはアクセスとQPSが制限された試用TOKENです。正式な使用には個人のTOKENに置き換えてください。
os.environ["APPBUILDER_TOKEN"] = "bce-v3/ALTAK-n5AYUIUJMarF7F7iFXVeK/1bf65eed7c8c7efef9b11388524fa1087f90ea58"

# プロンプトテンプレートを定義します。
template_str = "あなたは{role}の役割を果たします。私の質問に答えてください。\n\n質問:{question}\n\n回答:"

# 入力を定義し、playgroundコンポーネントを呼び出します。
input = appbuilder.Message({"role": "Javaエンジニア", "question": "Java言語のメモリ回収メカニズムについて簡単に説明してください。100文字以内でお願いします。"})

playground = appbuilder.Playground(prompt_template=template_str, model="ERNIE Speed-AppBuilder")

# タイプライターのように、ストリーム形式で大規模モデルの回答内容を表示します。
output = playground(input, stream=True, temperature=1e-10)
for stream_message in output.content:
print(stream_message)

# ストリーム出力が終了した後、再度完全な大規模モデルの対話結果を表示できます。回答内容の他に、トークンの使用量も含まれます。
print(output.model_dump_json(indent=4))

```
#### 回答表示

```shell
Java言語の
メモリ回収メカニズムは、ガベージコレクタ(Garbage Collector)を通じて実現されます。
ガベージコレクタは、使用されなくなったオブジェクトを自動的に検出し、その占有するメモリ空間を解放します。これにより、システムのメモリが枯渇しないようにします。
Javaは、シリアルコレクタ、パラレルコレクタ、CMSコレクタ、G1コレクタなど、さまざまなガベージコレクタを提供しており、異なるシナリオでのパフォーマンス要件に対応しています。

{
"content": "Java言語のメモリ回収メカニズムは、ガベージコレクタ(Garbage Collector)を通じて実現されます。ガベージコレクタは、使用されなくなったオブジェクトを自動的に検出し、その占有するメモリ空間を解放します。これにより、システムのメモリが枯渇しないようにします。Javaは、シリアルコレクタ、パラレルコレクタ、CMSコレクタ、G1コレクタなど、さまざまなガベージコレクタを提供しており、異なるシナリオでのパフォーマンス要件に対応しています。",
"name": "msg",
"mtype": "dict",
"id": "2bbee989-40e3-45e4-9802-e144cdc829a9",
"extra": {},
"token_usage": {
"prompt_tokens": 35,
"completion_tokens": 70,
"total_tokens": 105
}
}
```

### 2. コンポーネントの呼び出し
- SDKは、Baiduのエコシステムから提供される40以上の高品質なコンポーネントを提供しています。リストは[コンポーネントリスト](https://cloud.baidu.com/doc/AppBuilder/s/Glqb6dfiz#3%E3%80%81%E5%BC%80%E9%80%9A%E7%BB%84%E4%BB%B6%E6%9C%8D%E5%8A%A1)で確認できます。呼び出す前に[無料試用クォータ](https://console.bce.baidu.com/ai/#/ai/apaas/overview/resource/getFree)を申請してください。
- 例のコンポーネントは`RAG with Baidu Search Pro`で、Baidu Searchの検索エンジン技術とERNIEモデルのセマンティック理解能力を組み合わせて、ユーザーの検索意図をより正確に理解し、検索クエリに関連性の高い検索結果を提供します。

#### コード例
```python
import appbuilder
import os

# 環境変数にTOKENを設定します。以下のTOKENはアクセスとQPSが制限された試用TOKENです。正式な使用には個人のTOKENに置き換えてください。
os.environ["APPBUILDER_TOKEN"] = "bce-v3/ALTAK-n5AYUIUJMarF7F7iFXVeK/1bf65eed7c8c7efef9b11388524fa1087f90ea58"

rag_with_baidu_search_pro = appbuilder.RagWithBaiduSearchPro(model="ERNIE Speed-AppBuilder")

input = appbuilder.Message("9.11と9.8のどちらが大きいですか?")
result = rag_with_baidu_search_pro.run(
message=input,
instruction=appbuilder.Message("あなたは専門知識アシスタントです"))

# 実行結果を出力します。
print(result.model_dump_json(indent=4))
```

#### 回答表示
```shell
{
"content": "9.11は9.8より小さいです。小数の大小を比較する際には、整数部分と小数部分の数値を逐次比較する必要があります。9.11と9.8の場合、整数部分はどちらも9なので、小数部分で比較する必要があります。小数点後の最初の桁は1と8であり、明らかに1は8より小さいため、9.11は9.8より小さいです。",
"name": "msg",
"mtype": "dict",
"id": "eb31b7de-dd6a-485f-adb9-1f7921a6f4bf",
"extra": {
"search_baidu": [
{
"content": "大規模モデルの「知能」が疑問視される:9.11 vs 9...",
"icon": "https://appbuilder.bj.bcebos.com/baidu-search-rag-pro/icon/souhu.ico",
"url": "https://m.sohu.com/a/793754123_121924584/",
"ref_id": "2",
"site_name": "搜狐网",
"title": "大規模モデルの「知能」が疑問視される:9.11 vs 9.8の比較がAIの理解能力を明らかにする..."
},
{
"content": "究極|9.11は9.8より大きい?大規模モデルはなぜ...",
"icon": "https://appbuilder.bj.bcebos.com/baidu-search-rag-pro/icon/tencent.svg.png",
"url": "https://new.qq.com/rain/a/20240717A07JLV00",
"ref_id": "4",
"site_name": "腾讯网",
"title": "究極|9.11は9.8より大きい?大規模モデルはなぜ小学校の数学問題で集団的に..."
},
...
]
},
"token_usage": {
"completion_tokens": 77,
"prompt_tokens": 2008,
"total_tokens": 2085
}
}
```


### 3. AIネイティブアプリケーションの呼び出し
- 例のアプリケーションは:[ラップメンター](https://appbuilder.baidu.com/s/3qfjXy7k)です。このリンクをクリックしてウェブページで試してみてください。

#### コード例

```python
import appbuilder
import os

# 環境変数にTOKENを設定します。以下のTOKENはアクセスとQPSが制限された試用TOKENです。正式な使用には個人のTOKENに置き換えてください。
os.environ["APPBUILDER_TOKEN"] = "bce-v3/ALTAK-n5AYUIUJMarF7F7iFXVeK/1bf65eed7c8c7efef9b11388524fa1087f90ea58"

# AppBuilderのウェブページからアプリケーションIDを取得し、以下にラップメンターのアプリケーションIDを入力します。
app_id = "4678492a-5864-472e-810a-654538d3503c"

app_builder_client = appbuilder.AppBuilderClient(app_id)
conversation_id = app_builder_client.create_conversation()

answer = app_builder_client.run(conversation_id, "「上班狼狈却又追逐梦想」をテーマにラップを作成してください。押韻を保ち、200文字以内にしてください。")
print(answer.content.answer)
```

#### 回答表示
```shell
わかりました。「上班狼狈却又追逐梦想」をテーマに、簡単なラップを作成します。以下は簡単な例です。自分の感覚に合わせて調整してください。

イントロ:
朝九晚五、生活の重圧、
狼狈上班、しかし夢を追いかける、
毎日が新たな挑戦、
未来のために、私は前進する。

バース1:
スーツを着て、ネクタイを締めて、
人混みに入って、名声を追い求める、
狼狈しても、決して諦めない、
心の中に、夢があるから。

フック:
上班狼狈、しかし決して諦めない、
夢を追いかける、それが私の心の灯、
前方を照らし、私を導く、
どんなに困難でも、私は最後まで頑張る。

この小曲は「上班狼狈却又追逐梦想」をテーマに、押韻を通じて上班族が生活の苦しさにもかかわらず、夢を抱いて前進する精神を表現しています。気に入っていただけると幸いです!
```

**AIネイティブアプリケーションのコード例については、[CookBooks](./cookbooks/README.md)をご覧ください。以下のクックブックを優先的にお勧めします:**
- 基本機能コンポーネント
- [一般的なテキスト認識コンポーネント](/cookbooks/components/general_ocr.ipynb)
- [基本コンポーネントのサービス指向デプロイメント](/cookbooks/components/agent_runtime.ipynb)
- プロセスオーケストレーション
- [Assistant SDK](/cookbooks/pipeline/assistant_function_call.ipynb)
- エンドツーエンドアプリケーション
- [エージェント](/cookbooks/agent_builder.ipynb)
- [RAG](/cookbooks/end2end_application/rag/rag.ipynb)
- [企業レベルのQ&Aシステム](/cookbooks/end2end_application/rag/qa_system_2_dialogue.ipynb)
- 高度な実践
- [パブリッククラウドへのサービスデプロイメント](/cookbooks/advanced_application/cloud_deploy.ipynb)
- [サービストレース](/cookbooks/appbuilder_trace/trace.ipynb)


## Baidu AI Cloud Qianfan AppBuilder SDKの機能全景
<div align="center">
<img src='docs/image/structure-en.png' alt='wechat' width='800' >
</div>


## ユーザードキュメント

- [クイックスタート](/docs/quick_start/README.md)
- [インストール手順](/docs/quick_start/install.md)
- [リリースノート](/docs/quick_start/changelog.md)
- [基本コンポーネント](/docs/basic_module/README.md)
- [基本機能コンポーネント](/docs/basic_module/components.md)
- [プロセスオーケストレーション](/docs/basic_module/assistant_sdk.md)
- [エンドツーエンドアプリケーション](/docs/basic_module/appbuilder_client.md)
- [高度な実践](/docs/advanced_application/README.md)
- [CookBooks](/cookbooks/README.md)
- [サービスデプロイメント](/docs/service/README.md)
- [API呼び出し](/docs/service/flask.md)
- [インタラクティブフロントエンド](/docs/service/chainlit.md)
- [クラウドデプロイメント](/docs/service/cloud.md)
- [二次開発](/docs/develop_guide/README.md)


## オープンソースコミュニティと活動
<div align="center">
<h3>AppBuilder-SDK WeChatグループQRコード</h3>
<img src='docs/image/wechat_group.png' alt='wechat' width='200' >
</div>

- [Github Issue](https://github.com/baidubce/app-builder/issues): インストール/使用の問題を提出し、バグを報告し、新機能を提案し、開発計画をコミュニケーションします。

- [Baidu AI Cloud Qianfan Community](https://cloud.baidu.com/qianfandev)



## ライセンス

AppBuilder SDKはApache 2.0オープンソースプロトコルに従います。

0 comments on commit 4def90e

Please sign in to comment.