|
5 | 5 | "name": "Retrieval_Augmented_Generation_Pattern",
|
6 | 6 | "product_kind": "solution",
|
7 | 7 | "tags": [
|
| 8 | + "solution", |
8 | 9 | "watson",
|
| 10 | + "security", |
9 | 11 | "banking",
|
10 | 12 | "ibm_created"
|
11 | 13 | ],
|
|
25 | 27 | "secure",
|
26 | 28 | "secret manager",
|
27 | 29 | "key protect",
|
28 |
| - "scc" |
| 30 | + "security and compliance center workload protection", |
| 31 | + "cspm", |
| 32 | + "config aggregator", |
| 33 | + "app config" |
29 | 34 | ],
|
30 | 35 | "short_description": "Automate RAG deployment with supporting IBM Cloud and watsonx services, embed your enterprise data in generative AI solutions.",
|
31 | 36 | "long_description": "Utilize data from your enterprise to achieve productivity gains in activities related to question/answer conversations, content search, summarization and generation. RAG can be deployed in multiple configurations and is applicable to various industry use cases and solutions.\n\nThis deployable architecture provides a comprehensive foundation for trust, observability, security, and regulatory compliance by configuring and deploying various services and a sample application for a [RAG pattern](https://cloud.ibm.com/docs/pattern-genai-rag?topic=pattern-genai-rag-genai-pattern), including:\n- Configuring IBM Cloud Account with best practices from [IBM Cloud Framework for Financial Services](https://cloud.ibm.com/docs/framework-financial-services?topic=framework-financial-services-about)\n- Deploying key and secrets management services for storage and management of encryption keys and secrets\n- Deploying controls for continuous compliance\n- Deploying observability services for application and platform logging and monitoring\n- Deploying a suite of watsonx services to provide generative AI RAG capabilities\n- Deploying content databases for storing vector embeddings of the documents and content search/retrieval\n- Deploying a sample application in a variety of run times including CI/CD/CC pipelines for secure application lifecycle management\n\nThe above configured and deployed services enable a secure and trustworthy deployment of generative AI applications on IBM Cloud.\n\nThe configurations are flexible and be changed to meet the needs for several types of RAG patterns depending on the chosen combination of technologies and services.\n\nThe generative AI RAG pattern services include:\n- [watsonx.ai](https://dataplatform.cloud.ibm.com/docs/content/wsj/getting-started/welcome-main.html?context=wx)\n- [watsonx.data](https://cloud.ibm.com/docs/watsonxdata) (with Milvus)\n- [watsonx.governance](https://dataplatform.cloud.ibm.com/docs/content/svc-welcome/aiopenscale.html?context=wx)\n- [watsonx Assistant](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-welcome-new-assistant)\n- [watsonx Orchestrate](https://www.ibm.com/docs/en/watsonx/watson-orchestrate/current)\n- [Watson Discovery](https://cloud.ibm.com/docs/discovery-data)\n- [Elasticsearch](https://cloud.ibm.com/docs/databases-for-elasticsearch) Enterprise and Platinum edition\n\nThe supporting services include:\n- [Secrets Manager](https://cloud.ibm.com/docs/secrets-manager)\n- [Key Protect](https://cloud.ibm.com/docs/key-protect)\n- [Security and Compliance Center](https://cloud.ibm.com/docs/security-compliance)\n- [Event Notifications](https://cloud.ibm.com/docs/event-notifications?topic=event-notifications-getting-started)\n- [Logs](https://cloud.ibm.com/docs/cloud-logs)\n- [Monitoring](https://cloud.ibm.com/docs/monitoring?topic=monitoring-getting-started)\n- [Object Storage](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-getting-started-cloud-object-storage)\n- [Continuous Delivery](https://cloud.ibm.com/docs/ContinuousDelivery) toolchains\n- [Container Registry](https://cloud.ibm.com/docs/Registry)\n\nA [sample RAG application](https://github.com/IBM/gen-ai-rag-watsonx-sample-application) is deployed to [Code Engine](https://cloud.ibm.com/docs/codeengine) or [Red Hat OpenShift](https://cloud.ibm.com/docs/openshift) cluster.\n\nBy leveraging this architecture, you can accelerate your deployment and tailor it to meet your unique business needs and enterprise goals.",
|
|
43 | 48 | },
|
44 | 49 | {
|
45 | 50 | "title": "Achieve Regulatory Compliance",
|
46 |
| - "description": "Ensures regulatory compliance by implementing CI/CD/CC pipelines, along with Security and Compliance Center for continuous compliance." |
| 51 | + "description": "Ensures regulatory compliance by implementing CI/CD/CC pipelines, along with Security and Compliance Center Workload Protection for continuous compliance." |
47 | 52 | },
|
48 | 53 | {
|
49 | 54 | "title": "Ensure Observability",
|
|
104 | 109 | "service_name": "kms"
|
105 | 110 | },
|
106 | 111 | {
|
107 |
| - "service_name": "compliance", |
| 112 | + "service_name": "sysdig-secure", |
| 113 | + "role_crns": [ |
| 114 | + "crn:v1:bluemix:public:iam::::serviceRole:Manager", |
| 115 | + "crn:v1:bluemix:public:iam::::role:Editor" |
| 116 | + ] |
| 117 | + }, |
| 118 | + { |
| 119 | + "service_name": "apprapp", |
108 | 120 | "role_crns": [
|
109 | 121 | "crn:v1:bluemix:public:iam::::serviceRole:Manager",
|
110 | 122 | "crn:v1:bluemix:public:iam::::role:Editor"
|
|
306 | 318 | },
|
307 | 319 | {
|
308 | 320 | "key": "skip_iam_authorization_policy",
|
309 |
| - "display_name": "Disable Secrets Manager IAM credentials engine auth policy creation?", |
| 321 | + "display_name": "disable_secrets_manager_iam_credentials_engine", |
310 | 322 | "type": "boolean",
|
311 | 323 | "default_value": false,
|
312 | 324 | "description": "Whether to skip the creation of the IAM authorization policies required to enable the Secrets Manager IAM credentials engine. If set to false, policies will be created that grants the Secrets Manager instance 'Operator' access to the IAM identity service, and 'Groups Service Member Manage' access to the IAM groups service.",
|
|
326 | 338 | "description": "Pass a list of regions to create a tenant that is targeted to the Cloud Logs instance created by this solution. To manage platform logs that are generated by IBM Cloud® services in a region of IBM Cloud, you must create a tenant in each region that you operate. Leave the list empty if you don't want to create any tenants.",
|
327 | 339 | "required": false
|
328 | 340 | },
|
| 341 | + { |
| 342 | + "key": "app_config_service_plan", |
| 343 | + "type": "string", |
| 344 | + "default_value": "basic", |
| 345 | + "description": "The pricing plan to use for the IBM Cloud App Configuration instance.", |
| 346 | + "required": false, |
| 347 | + "options": [ |
| 348 | + { |
| 349 | + "displayname": "Basic", |
| 350 | + "value": "basic" |
| 351 | + }, |
| 352 | + { |
| 353 | + "displayname": "Standard", |
| 354 | + "value": "standardv2" |
| 355 | + }, |
| 356 | + { |
| 357 | + "displayname": "Enterprise", |
| 358 | + "value": "enterprise" |
| 359 | + } |
| 360 | + ] |
| 361 | + }, |
| 362 | + { |
| 363 | + "key": "scc_workload_protection_service_plan", |
| 364 | + "type": "string", |
| 365 | + "default_value": "graduated-tier", |
| 366 | + "description": "The pricing plan to use for the IBM Cloud Security and Compliance Center Workload Protection instance.", |
| 367 | + "required": false, |
| 368 | + "options": [ |
| 369 | + { |
| 370 | + "displayname": "Graduated Tier", |
| 371 | + "value": "graduated-tier" |
| 372 | + }, |
| 373 | + { |
| 374 | + "displayname": "Free Trial", |
| 375 | + "value": "free-trial" |
| 376 | + } |
| 377 | + ] |
| 378 | + }, |
| 379 | + { |
| 380 | + "key": "enterprise_id", |
| 381 | + "type": "string", |
| 382 | + "default_value": "__NULL__", |
| 383 | + "description": "If the account is an enterprise account and you want to scan sub-accounts for compliance, this value should be set to the enterprise ID (this is different to the account ID).", |
| 384 | + "required": false |
| 385 | + }, |
| 386 | + { |
| 387 | + "key": "enterprise_account_group_ids_to_assign", |
| 388 | + "type": "array", |
| 389 | + "default_value": [ |
| 390 | + "all" |
| 391 | + ], |
| 392 | + "description": "A list of enterprise account group IDs to assign the trusted profile template to in order for the accounts to be scanned for compliance. Supports passing the string 'all' in the list to assign to all account groups. Only applies if a value is being passed for `enterprise_id`.", |
| 393 | + "required": false |
| 394 | + }, |
| 395 | + { |
| 396 | + "key": "enterprise_account_ids_to_assign", |
| 397 | + "type": "array", |
| 398 | + "default_value": [ |
| 399 | + "all" |
| 400 | + ], |
| 401 | + "description": "A list of enterprise account IDs to assign the trusted profile template to in order for the accounts to be scanned. Supports passing the string 'all' in the list to assign to all accounts. Only applies if a value is being passed for `enterprise_id`.", |
| 402 | + "required": false |
| 403 | + }, |
329 | 404 | {
|
330 | 405 | "key": "sample_app_git_url",
|
331 | 406 | "type": "string",
|
|
475 | 550 | "service_name": "kms"
|
476 | 551 | },
|
477 | 552 | {
|
478 |
| - "service_name": "compliance", |
| 553 | + "service_name": "sysdig-secure", |
| 554 | + "role_crns": [ |
| 555 | + "crn:v1:bluemix:public:iam::::serviceRole:Manager", |
| 556 | + "crn:v1:bluemix:public:iam::::role:Editor" |
| 557 | + ] |
| 558 | + }, |
| 559 | + { |
| 560 | + "service_name": "apprapp", |
479 | 561 | "role_crns": [
|
480 | 562 | "crn:v1:bluemix:public:iam::::serviceRole:Manager",
|
481 | 563 | "crn:v1:bluemix:public:iam::::role:Editor"
|
|
690 | 772 | },
|
691 | 773 | {
|
692 | 774 | "key": "skip_iam_authorization_policy",
|
693 |
| - "display_name": "Disable Secrets Manager IAM credentials engine auth policy creation?", |
| 775 | + "display_name": "disable_secrets_manager_iam_credentials_engine", |
694 | 776 | "type": "boolean",
|
695 | 777 | "default_value": false,
|
696 | 778 | "description": "Whether to skip the creation of the IAM authorization policies required to enable the Secrets Manager IAM credentials engine. If set to false, policies will be created that grants the Secrets Manager instance 'Operator' access to the IAM identity service, and 'Groups Service Member Manage' access to the IAM groups service.",
|
|
710 | 792 | "description": "Pass a list of regions to create a tenant that is targeted to the Cloud Logs instance created by this solution. To manage platform logs that are generated by IBM Cloud® services in a region of IBM Cloud, you must create a tenant in each region that you operate. Leave the list empty if you don't want to create any tenants.",
|
711 | 793 | "required": false
|
712 | 794 | },
|
| 795 | + { |
| 796 | + "key": "app_config_service_plan", |
| 797 | + "type": "string", |
| 798 | + "default_value": "basic", |
| 799 | + "description": "The pricing plan to use for the IBM Cloud App Configuration instance.", |
| 800 | + "required": false, |
| 801 | + "options": [ |
| 802 | + { |
| 803 | + "displayname": "Basic", |
| 804 | + "value": "basic" |
| 805 | + }, |
| 806 | + { |
| 807 | + "displayname": "Standard", |
| 808 | + "value": "standardv2" |
| 809 | + }, |
| 810 | + { |
| 811 | + "displayname": "Enterprise", |
| 812 | + "value": "enterprise" |
| 813 | + } |
| 814 | + ] |
| 815 | + }, |
| 816 | + { |
| 817 | + "key": "scc_workload_protection_service_plan", |
| 818 | + "type": "string", |
| 819 | + "default_value": "graduated-tier", |
| 820 | + "description": "The pricing plan to use for the IBM Cloud Security and Compliance Center Workload Protection instance.", |
| 821 | + "required": false, |
| 822 | + "options": [ |
| 823 | + { |
| 824 | + "displayname": "Graduated Tier", |
| 825 | + "value": "graduated-tier" |
| 826 | + }, |
| 827 | + { |
| 828 | + "displayname": "Free Trial", |
| 829 | + "value": "free-trial" |
| 830 | + } |
| 831 | + ] |
| 832 | + }, |
| 833 | + { |
| 834 | + "key": "enterprise_id", |
| 835 | + "type": "string", |
| 836 | + "default_value": "__NULL__", |
| 837 | + "description": "If the account is an enterprise account and you want to scan sub-accounts for compliance, this value should be set to the enterprise ID (this is different to the account ID).", |
| 838 | + "required": false |
| 839 | + }, |
| 840 | + { |
| 841 | + "key": "enterprise_account_group_ids_to_assign", |
| 842 | + "type": "array", |
| 843 | + "default_value": [ |
| 844 | + "all" |
| 845 | + ], |
| 846 | + "description": "A list of enterprise account group IDs to assign the trusted profile template to in order for the accounts to be scanned for compliance. Supports passing the string 'all' in the list to assign to all account groups. Only applies if a value is being passed for `enterprise_id`.", |
| 847 | + "required": false |
| 848 | + }, |
| 849 | + { |
| 850 | + "key": "enterprise_account_ids_to_assign", |
| 851 | + "type": "array", |
| 852 | + "default_value": [ |
| 853 | + "all" |
| 854 | + ], |
| 855 | + "description": "A list of enterprise account IDs to assign the trusted profile template to in order for the accounts to be scanned. Supports passing the string 'all' in the list to assign to all accounts. Only applies if a value is being passed for `enterprise_id`.", |
| 856 | + "required": false |
| 857 | + }, |
| 858 | + { |
| 859 | + |
| 860 | + "key": "app_config_service_plan", |
| 861 | + "type": "string", |
| 862 | + "default_value": "basic", |
| 863 | + "description": "The pricing plan to use for the IBM Cloud App Configuration instance.", |
| 864 | + "required": false, |
| 865 | + "options": [ |
| 866 | + { |
| 867 | + "displayname": "Basic", |
| 868 | + "value": "basic" |
| 869 | + }, |
| 870 | + { |
| 871 | + "displayname": "Standard", |
| 872 | + "value": "standardv2" |
| 873 | + }, |
| 874 | + { |
| 875 | + "displayname": "Enterprise", |
| 876 | + "value": "enterprise" |
| 877 | + } |
| 878 | + ] |
| 879 | + }, |
| 880 | + { |
| 881 | + "key": "scc_workload_protection_service_plan", |
| 882 | + "type": "string", |
| 883 | + "default_value": "graduated-tier", |
| 884 | + "description": "The pricing plan to use for the IBM Cloud Security and Compliance Center Workload Protection instance.", |
| 885 | + "required": false, |
| 886 | + "options": [ |
| 887 | + { |
| 888 | + "displayname": "Graduated Tier", |
| 889 | + "value": "graduated-tier" |
| 890 | + }, |
| 891 | + { |
| 892 | + "displayname": "Free Trial", |
| 893 | + "value": "free-trial" |
| 894 | + } |
| 895 | + ] |
| 896 | + }, |
| 897 | + { |
| 898 | + "key": "enterprise_id", |
| 899 | + "type": "string", |
| 900 | + "default_value": "__NULL__", |
| 901 | + "description": "If the account is an enterprise account and you want to scan sub-accounts for compliance, this value should be set to the enterprise ID (this is different to the account ID).", |
| 902 | + "required": false |
| 903 | + }, |
| 904 | + { |
| 905 | + "key": "enterprise_account_group_ids_to_assign", |
| 906 | + "type": "array", |
| 907 | + "default_value": [ |
| 908 | + "all" |
| 909 | + ], |
| 910 | + "description": "A list of enterprise account group IDs to assign the trusted profile template to in order for the accounts to be scanned for compliance. Supports passing the string 'all' in the list to assign to all account groups. Only applies if a value is being passed for `enterprise_id`.", |
| 911 | + "required": false |
| 912 | + }, |
| 913 | + { |
| 914 | + "key": "enterprise_account_ids_to_assign", |
| 915 | + "type": "array", |
| 916 | + "default_value": [ |
| 917 | + "all" |
| 918 | + ], |
| 919 | + "description": "A list of enterprise account IDs to assign the trusted profile template to in order for the accounts to be scanned. Supports passing the string 'all' in the list to assign to all accounts. Only applies if a value is being passed for `enterprise_id`.", |
| 920 | + "required": false |
| 921 | + }, |
713 | 922 | {
|
714 | 923 | "key": "sample_app_git_url",
|
715 | 924 | "type": "string",
|
|
0 commit comments