これは、Google Cloud の Vertex AI PaLM API を通じて Generative AI を使用したカスタマー サービス チャットボットのデモです。また、このアプリは MongoDB Atlas Search を利用して、MongoDB Atlas データベース内で関連する回答を探します。最後に、アプリは感情分析により不満を抱いている顧客を検出できます。
MongoDB Atlas のセットアップ
新しい MongoDB データベース クラスターを Atlas アカウントにデプロイします。このデモには無料の M0 層を使用できます。
XYZ-Corp
データベースを作成します。
XYZ-Corp
データベースにCustomer
コレクションを作成し、次のドキュメントを挿入します。
{
"customer_id" : " 111 " ,
"conversation" :[],
"Name" : " Venkatesh Shanbhag "
}
XYZ-Corp
データベースにInsurance
コレクションを作成し、次のドキュメントを挿入します。
{
"context" : " You are a Customer support agent with name Sara working for XYZ-corp. n It does provides property Insurance. Sara will not reply for any queries regarding other types of insurance. n The company covers insurance of properties like - Hospitals, offices, shops, apartments. n Max insurance covered will decline over period of time. n XYZ-Corp only covers Fire and Earthquake hazard insurance. n You are allowed to provide only the details regarding the company itself. n Do not repond with sentiment in any of the responses. " ,
"type" : " Intro "
}
XYZ-Corp
データベースにClaims
コレクションを作成し、次のドキュメントを挿入します。
{
"claim_number" : " 12345 " ,
"Name" : " Venkatesh Shanbhag " ,
"Claim_amount" :{ "$numberLong" : " 10000 " },
"Currency" : " USD " ,
"Claim_status" : " In progress " , "customer_id" : " 111 "
}
デフォルト設定を使用して、 Claims
コレクションにdefault
という名前の Atlas Search インデックスを作成します。 Atlas Search ドキュメントに従ってください: https://www.mongodb.com/docs/atlas/atlas-search/create-index/。
小規模な知識ベースがチャット検索コレクションで利用できます。以下のドキュメントをMongoDBに挿入します。実際のシーンでは、テキストの代わりにテキスト埋め込みのベクトルが保存され、ベクトルに基づいて検索が実行されます。
{ "question" : " claim " , "Answer" : " Please provide 5 digit claim number " }
{ "question" : " Not resolved " , "Answer" : " Do you want to connect to an Agent for further assistence " }
{ "question" : " status of a claim " , "Answer" : " Please provide 5 digit claim number " }
{"question":"Company Policy","Answer":"1. Architects fees / Debris clearancenFollowing a valid claim for damage undernbuildings Causes below, we will also pay:n• Architects, surveyors, consulting engineersnand legal fees, but not fees for preparing anclaim;n• the cost of clearing debris from the site orndemolishing or shoring up the buildings;n• the cost to comply with government or localnauthority requirements but not if the ordernpredates the loss or damage.n2. Emergency services forced entrynLoss or damage to the buildings caused whennthe fire, police or ambulance service has to forcenan entry to the buildings because of annemergency or perceived emergency involvingnyou or your family.n3. Moving HomenIf you have entered into a contract to sell thenhome, the person buying it will have the fullnprotection of your policy for the buildings up tonthe date of completion of the purchase, as longnas the home is not covered by any otherninsurance.n4. Keys & locksnIf your keys are lost or stolen we will pay up tonthe limit for any one claim for the cost ofnreplacing keys and locks or lock mechanisms to:n• external doors and windows of the homen(but not to a garage or outbuildings);n• a safe within the home;n• an alarm protecting the home.nLimit – please refer to your schedulen5. Alternative AccommodationnWe will pay you up to the limit for any one claimnfor the reasonable cost of alternativenaccommodation for you, your family and yourndomestic pets when your home cannot be livednin due to loss or damage covered by this policy..nLimit – please refer to your schedule"}
{ "question" : " Proof of income " , "Answer" : " This document may become necessary whenever the sum n proposed is very high. Normally a sum proposed which is seven n to eight times of the declared income is acceptable for n insurance. But proposals do come to the insurer when the n known source of income of the proposer is much less compared n to the amount of insurance desired. A service holder normally n does not face this problem as his sources of income are n verifiable. n In case of business people, the assessed income is at times n much less compared to what is a desirable income for the n amount of insurance desired. In such cases the insurer at n times calls for assessed income tax returns, or Chartered n Accountant’s certificate etc. Such precautions are necessary n to eliminate the possibility of moral hazard. " }
{ "question" : " Not good " , "Answer" : " Do you want to connect via call to a Customer care representative? " }
{ "question" : " bad experience " , "Answer" : " Do you want to connect via call to a Customer care representative? " }
Googleクラウドのセットアップ
Google Cloud プロジェクト名を設定します。
gcloud config set project <PROJECT_ID>
リポジトリのクローンを作成します。
git clone https://github.com/mongodb-developer/Google-Cloud-Generative-AI-Chatbot.git
main.py
内の MongoDB Atlas データベース接続文字列と Google Cloud プロジェクト名を更新します。
アプリケーションを実行します。
python3 main.py
ヴェンカテシュ・シャンバーグ |
ご自身の責任で使用してください。サポートされている MongoDB 製品ではありません