Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

service_conf.yaml 2.4KB

Feat: Adds OpenSearch2.19.1 as the vector_database support (#7140) ### What problem does this PR solve? This PR adds the support for latest OpenSearch2.19.1 as the store engine & search engine option for RAGFlow. ### Main Benefit 1. OpenSearch2.19.1 is licensed under the [Apache v2.0 License] which is much better than Elasticsearch 2. For search, OpenSearch2.19.1 supports full-text search、vector_search、hybrid_search those are similar with Elasticsearch on schema 3. For store, OpenSearch2.19.1 stores text、vector those are quite simliar with Elasticsearch on schema ### Changes - Support opensearch_python_connetor. I make a lot of adaptions since the schema and api/method between ES and Opensearch differs in many ways(especially the knn_search has a significant gap) : rag/utils/opensearch_coon.py - Support static config adaptions by changing: conf/service_conf.yaml、api/settings.py、rag/settings.py - Supprt some store&search schema changes between OpenSearch and ES: conf/os_mapping.json - Support OpenSearch python sdk : pyproject.toml - Support docker config for OpenSearch2.19.1 : docker/.env、docker/docker-compose-base.yml、docker/service_conf.yaml.template ### How to use - I didn't change the priority that ES as the default doc/search engine. Only if in docker/.env , we set DOC_ENGINE=${DOC_ENGINE:-opensearch}, it will work. ### Others Our team tested a lot of docs in our environment by using OpenSearch as the vector database ,it works very well. All the conifg for OpenSearch is necessary. ### Type of change - [x] New Feature (non-breaking change which adds functionality) --------- Co-authored-by: Yongteng Lei <yongtengrey@outlook.com> Co-authored-by: writinwaters <93570324+writinwaters@users.noreply.github.com> Co-authored-by: Yingfeng <yingfeng.zhang@gmail.com>
6 månader sedan
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. ragflow:
  2. host: 0.0.0.0
  3. http_port: 9380
  4. mysql:
  5. name: 'rag_flow'
  6. user: 'root'
  7. password: 'infini_rag_flow'
  8. host: 'localhost'
  9. port: 5455
  10. max_connections: 900
  11. stale_timeout: 300
  12. minio:
  13. user: 'rag_flow'
  14. password: 'infini_rag_flow'
  15. host: 'localhost:9000'
  16. es:
  17. hosts: 'http://localhost:1200'
  18. username: 'elastic'
  19. password: 'infini_rag_flow'
  20. os:
  21. hosts: 'http://localhost:1201'
  22. username: 'admin'
  23. password: 'infini_rag_flow_OS_01'
  24. infinity:
  25. uri: 'localhost:23817'
  26. db_name: 'default_db'
  27. redis:
  28. db: 1
  29. password: 'infini_rag_flow'
  30. host: 'localhost:6379'
  31. # postgres:
  32. # name: 'rag_flow'
  33. # user: 'rag_flow'
  34. # password: 'infini_rag_flow'
  35. # host: 'postgres'
  36. # port: 5432
  37. # max_connections: 100
  38. # stale_timeout: 30
  39. # s3:
  40. # access_key: 'access_key'
  41. # secret_key: 'secret_key'
  42. # region: 'region'
  43. # oss:
  44. # access_key: 'access_key'
  45. # secret_key: 'secret_key'
  46. # endpoint_url: 'http://oss-cn-hangzhou.aliyuncs.com'
  47. # region: 'cn-hangzhou'
  48. # bucket: 'bucket_name'
  49. # azure:
  50. # auth_type: 'sas'
  51. # container_url: 'container_url'
  52. # sas_token: 'sas_token'
  53. # azure:
  54. # auth_type: 'spn'
  55. # account_url: 'account_url'
  56. # client_id: 'client_id'
  57. # secret: 'secret'
  58. # tenant_id: 'tenant_id'
  59. # container_name: 'container_name'
  60. # user_default_llm:
  61. # factory: 'Tongyi-Qianwen'
  62. # api_key: 'sk-xxxxxxxxxxxxx'
  63. # base_url: ''
  64. # oauth:
  65. # oauth2:
  66. # display_name: "OAuth2"
  67. # client_id: "your_client_id"
  68. # client_secret: "your_client_secret"
  69. # authorization_url: "https://your-oauth-provider.com/oauth/authorize"
  70. # token_url: "https://your-oauth-provider.com/oauth/token"
  71. # userinfo_url: "https://your-oauth-provider.com/oauth/userinfo"
  72. # redirect_uri: "https://your-app.com/v1/user/oauth/callback/oauth2"
  73. # oidc:
  74. # display_name: "OIDC"
  75. # client_id: "your_client_id"
  76. # client_secret: "your_client_secret"
  77. # issuer: "https://your-oauth-provider.com/oidc"
  78. # scope: "openid email profile"
  79. # redirect_uri: "https://your-app.com/v1/user/oauth/callback/oidc"
  80. # github:
  81. # type: "github"
  82. # icon: "github"
  83. # display_name: "Github"
  84. # client_id: "your_client_id"
  85. # client_secret: "your_client_secret"
  86. # redirect_uri: "https://your-app.com/v1/user/oauth/callback/github"
  87. # authentication:
  88. # client:
  89. # switch: false
  90. # http_app_key:
  91. # http_secret_key:
  92. # site:
  93. # switch: false
  94. # permission:
  95. # switch: false
  96. # component: false
  97. # dataset: false