From 286b1421cf968641e7c46a9ac54ba4a5293363bd Mon Sep 17 00:00:00 2001
From: balibabu <cike8899@users.noreply.github.com>
Date: Mon, 1 Apr 2024 10:54:11 +0800
Subject: [PATCH] feat: add logo-with-text.png (#184)

* feat: alter "RagFlow" to "RAGFlow"

* feat: move logo style to style tag

* feat: add logo-with-text.png

* feat: hide TranslationIcon
---
 README.md                                     |  64 +++++++++--------
 README_zh.md                                  |  66 ++++++++++--------
 web/src/assets/logo-with-text.png             | Bin 0 -> 8240 bytes
 web/src/layouts/components/header/index.tsx   |   2 +-
 .../components/right-toolbar/index.tsx        |  11 +--
 .../knowledge-setting/configuration.tsx       |   2 +-
 .../components/knowledge-setting/utils.ts     |   2 +-
 .../user-setting/setting-profile/index.tsx    |  10 +--
 8 files changed, 82 insertions(+), 75 deletions(-)
 create mode 100644 web/src/assets/logo-with-text.png

diff --git a/README.md b/README.md
index b261c79..54408d0 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,9 @@
 <div align="center">
 <a href="https://demo.ragflow.io/">
-<img src="https://github.com/infiniflow/ragflow/assets/12318111/f034fb27-b3bf-401b-b213-e1dfa7448d2a" width="320" alt="ragflow logo">
+<img src="web/src/assets/logo-with-text.png" width="350" alt="ragflow logo">
 </a>
 </div>
 
-
 <p align="center">
   <a href="./README.md">English</a> |
   <a href="./README_zh.md">简体中文</a> 
@@ -26,27 +25,32 @@
 [RAGFlow](http://demo.ragflow.io) is an open-source, Retrieval-Augmented Generation engine built on large language models (LLM), deep document understanding, and multiple recall. It offers a streamlined RAG workflow for businesses of any scale, providing truthful responses with solid citations through a generative AI knowledge management platform.
 
 ## 🌟 Key Features
- 
+
 ### 🍭 **"Quality in, quality out"**
-  - Deep document understanding-based knowledge extraction from unstructured data with complicated formats.
-  - Finds "needle in a data haystack" of literally unlimited tokens.
+
+- Deep document understanding-based knowledge extraction from unstructured data with complicated formats.
+- Finds "needle in a data haystack" of literally unlimited tokens.
 
 ### 🍱 **Template-based chunking**
-  - Intelligent and explainable.
-  - Plenty of template options to choose from.
+
+- Intelligent and explainable.
+- Plenty of template options to choose from.
 
 ### 🌱 **Grounded citations with reduced hallucinations**
-  - Visualization of text chunking to allow human intervention.
-  - Quick view of the key references and traceable citations to support grounded answers.
+
+- Visualization of text chunking to allow human intervention.
+- Quick view of the key references and traceable citations to support grounded answers.
 
 ### 🍔 **Compatibility with heterogeneous data sources**
-  - Supports Word, slides, excel, txt, images, scanned copies, structured data, web pages, and more.
+
+- Supports Word, slides, excel, txt, images, scanned copies, structured data, web pages, and more.
 
 ### 🛀 **Automated and effortless RAG workflow**
-  - Streamlined RAG orchestration catered to both personal and large businesses.
-  - Configurable LLMs as well as embedding models.
-  - Multiple recall paired with fused re-ranking.
-  - Intuitive APIs for seamless integration with business.
+
+- Streamlined RAG orchestration catered to both personal and large businesses.
+- Configurable LLMs as well as embedding models.
+- Multiple recall paired with fused re-ranking.
+- Intuitive APIs for seamless integration with business.
 
 ## 🔎 System Architecture
 
@@ -65,11 +69,11 @@
 
 ### 🚀 Start up the server
 
-1. Ensure `vm.max_map_count` > 65535: 
+1. Ensure `vm.max_map_count` > 65535:
 
    > To check the value of `vm.max_map_count`:
    >
-   > ```bash 
+   > ```bash
    > $ sysctl vm.max_map_count
    > ```
    >
@@ -92,7 +96,7 @@
    $ git clone https://github.com/infiniflow/ragflow.git
    ```
 
-3. Build the pre-built Docker images and start up the server: 
+3. Build the pre-built Docker images and start up the server:
 
    ```bash
    $ cd ragflow/docker
@@ -102,31 +106,33 @@
    > The core image is about 15 GB in size and may take a while to load.
 
 4. Check the server status after having the server up and running:
+
    ```bash
    $ docker logs -f ragflow-server
    ```
-   *The following output confirms a successful launch of the system:*
+
+   _The following output confirms a successful launch of the system:_
 
    ```bash
-       ____                 ______ __               
+       ____                 ______ __
       / __ \ ____ _ ____ _ / ____// /____  _      __
      / /_/ // __ `// __ `// /_   / // __ \| | /| / /
-    / _, _// /_/ // /_/ // __/  / // /_/ /| |/ |/ / 
-   /_/ |_| \__,_/ \__, //_/    /_/ \____/ |__/|__/  
-                 /____/                             
-     
+    / _, _// /_/ // /_/ // __/  / // /_/ /| |/ |/ /
+   /_/ |_| \__,_/ \__, //_/    /_/ \____/ |__/|__/
+                 /____/
+
     * Running on all addresses (0.0.0.0)
     * Running on http://127.0.0.1:9380
     * Running on http://172.22.0.5:9380
     INFO:werkzeug:Press CTRL+C to quit
-    ```
+   ```
 
 5. In your web browser, enter the IP address of your server as prompted and log in to RAGFlow.
 6. In [service_conf.yaml](./docker/service_conf.yaml), select the desired LLM factory in `user_default_llm` and update the `API_KEY` field with the corresponding API key.
+
    > See [./docs/llm_api_key_setup.md](./docs/llm_api_key_setup.md) for more information.
-   
-   *The show is now on!*
 
+   _The show is now on!_
 
 ## đź”§ Configurations
 
@@ -136,14 +142,14 @@ When it comes to system configurations, you will need to manage the following fi
 - [service_conf.yaml](./docker/service_conf.yaml): Configures the back-end services.
 - [docker-compose.yml](./docker/docker-compose.yml): The system relies on [docker-compose.yml](./docker/docker-compose.yml) to start up.
 
-You must ensure that changes to the [.env](./docker/.env) file are in line with what are in the [service_conf.yaml](./docker/service_conf.yaml) file. 
+You must ensure that changes to the [.env](./docker/.env) file are in line with what are in the [service_conf.yaml](./docker/service_conf.yaml) file.
 
 > The [./docker/README](./docker/README.md) file provides a detailed description of the environment settings and service configurations, and you are REQUIRED to ensure that all environment settings listed in the [./docker/README](./docker/README.md) file are aligned with the corresponding configurations in the [service_conf.yaml](./docker/service_conf.yaml) file.
 
 To update the default serving port (80), go to [docker-compose.yml](./docker/docker-compose.yml) and change `80:80` to `<YOUR_SERVING_PORT>:80`.
 
 > Updates to all system configurations require a system reboot to take effect:
-> 
+>
 > ```bash
 > $ docker-compose up -d
 > ```
@@ -171,4 +177,4 @@ See the [RAGFlow Roadmap 2024](https://github.com/infiniflow/ragflow/issues/162)
 
 ## 🙌 Contributing
 
-RAGFlow flourishes via open-source collaboration. In this spirit, we embrace diverse contributions from the community. If you would like to be a part, review our [Contribution Guidelines](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md) first. 
+RAGFlow flourishes via open-source collaboration. In this spirit, we embrace diverse contributions from the community. If you would like to be a part, review our [Contribution Guidelines](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md) first.
diff --git a/README_zh.md b/README_zh.md
index 2448d61..c6c2b8a 100644
--- a/README_zh.md
+++ b/README_zh.md
@@ -1,10 +1,9 @@
 <div align="center">
 <a href="https://demo.ragflow.io/">
-<img src="https://github.com/infiniflow/ragflow/assets/12318111/f034fb27-b3bf-401b-b213-e1dfa7448d2a" width="320" alt="ragflow logo">
+<img src="web/src/assets/logo-with-text.png" width="350" alt="ragflow logo">
 </a>
 </div>
 
-
 <p align="center">
   <a href="./README.md">English</a> |
   <a href="./README_zh.md">简体中文</a> 
@@ -26,27 +25,32 @@
 [RAGFlow](http://demo.ragflow.io) 是一款基于大型语言模型(LLM)以及深度文档理解构建的开源检索增强型生成引擎(Retrieval-Augmented Generation Engine)。RAGFlow 可以为各种规模的企业提供一套精简的 RAG 工作流程,通过生成式 AI (Generative AI)知识管理平台提供可靠的问答以及有理有据的引用。
 
 ## 🌟 主要功能
- 
+
 ### 🍭 **"Quality in, quality out"**
-  - 基于深度文档理解,能够从各类复杂格式的非结构化数据中提取真知灼见。
-  - 真正在无限上下文(token)的场景下快速完成大海捞针测试。
+
+- 基于深度文档理解,能够从各类复杂格式的非结构化数据中提取真知灼见。
+- 真正在无限上下文(token)的场景下快速完成大海捞针测试。
 
 ### 🍱 **基于模板的文本切片**
-  - 不仅仅是智能,更重要的是可控可解释。
-  - 多种文本模板可供选择
+
+- 不仅仅是智能,更重要的是可控可解释。
+- 多种文本模板可供选择
 
 ### 🌱 **有理有据、最大程度降低幻觉(hallucination)**
-  - 文本切片过程可视化,支持手动调整。
-  - 有理有据:答案提供关键引用的快照并支持追根溯源。
+
+- 文本切片过程可视化,支持手动调整。
+- 有理有据:答案提供关键引用的快照并支持追根溯源。
 
 ### 🍔 **兼容各类异构数据源**
-  - 支持丰富的文件类型,包括 Word 文档、PPT、excel 表格、txt 文件、图片、PDF、影印件、复印件、结构化数据, 网页等。
+
+- 支持丰富的文件类型,包括 Word 文档、PPT、excel 表格、txt 文件、图片、PDF、影印件、复印件、结构化数据, 网页等。
 
 ### 🛀 **全程无忧、自动化的 RAG 工作流**
-  - 全面优化的 RAG 工作流可以支持从个人应用乃至超大型企业的各类生态系统。
-  - 大语言模型 LLM 以及向量模型均支持配置。
-  - 基于多路召回、融合重排序。
-  - 提供易用的 API,可以轻松集成到各类企业系统。
+
+- 全面优化的 RAG 工作流可以支持从个人应用乃至超大型企业的各类生态系统。
+- 大语言模型 LLM 以及向量模型均支持配置。
+- 基于多路召回、融合重排序。
+- 提供易用的 API,可以轻松集成到各类企业系统。
 
 ## 🔎 系统架构
 
@@ -69,7 +73,7 @@
 
    > 如需确认 `vm.max_map_count` 的大小:
    >
-   > ```bash 
+   > ```bash
    > $ sysctl vm.max_map_count
    > ```
    >
@@ -102,32 +106,38 @@
    > 核心镜像文件大约 15 GB,可能需要一定时间拉取。请耐心等待。
 
 4. 服务器启动成功后再次确认服务器状态:
+
    ```bash
    $ docker logs -f ragflow-server
    ```
-   *出现以下界面提示说明服务器启动成功:*
+
+   _出现以下界面提示说明服务器启动成功:_
 
    ```bash
-       ____                 ______ __               
+       ____                 ______ __
       / __ \ ____ _ ____ _ / ____// /____  _      __
      / /_/ // __ `// __ `// /_   / // __ \| | /| / /
-    / _, _// /_/ // /_/ // __/  / // /_/ /| |/ |/ / 
-   /_/ |_| \__,_/ \__, //_/    /_/ \____/ |__/|__/  
-                 /____/                             
-     
+    / _, _// /_/ // /_/ // __/  / // /_/ /| |/ |/ /
+   /_/ |_| \__,_/ \__, //_/    /_/ \____/ |__/|__/
+                 /____/
+
     * Running on all addresses (0.0.0.0)
     * Running on http://127.0.0.1:9380
     * Running on http://172.22.0.5:9380
     INFO:werkzeug:Press CTRL+C to quit
-    ```
+   ```
 
 5. 根据刚才的界面提示在你的浏览器中输入你的服务器对应的 IP 地址并登录 RAGFlow。
    > 上面这个例子中,您只需输入 http://172.22.0.5 即可:端口 9380 已通过 Docker 端口映射被设置成 80(默认的 HTTP 服务端口)。
-7. 在 [service_conf.yaml](./docker/service_conf.yaml) 文件的 `user_default_llm` 栏配置 LLM factory,并在 `API_KEY` 栏填写和你选择的大模型相对应的 API key。
+6. 在 [service_conf.yaml](./docker/service_conf.yaml) 文件的 `user_default_llm` 栏配置 LLM factory,并在 `API_KEY` 栏填写和你选择的大模型相对应的 API key。
+
+   > 详见 [./docs/llm_api_key_setup.md](./docs/llm_api_key_setup.md)。
+
+   _好戏开始,接着奏乐接着舞!_
+
    > 详见 [./docs/llm_api_key_setup.md](./docs/llm_api_key_setup.md)。
-   
-   *好戏开始,接着奏乐接着舞!*
 
+   _好戏开始,接着奏乐接着舞!_
 
 ## 🔧 系统配置
 
@@ -137,14 +147,14 @@
 - [service_conf.yaml](./docker/service_conf.yaml):配置各类后台服务。
 - [docker-compose-CN.yml](./docker/docker-compose-CN.yml): 系统依赖该文件完成启动。
 
-请务必确保 [.env](./docker/.env) 文件中的变量设置与 [service_conf.yaml](./docker/service_conf.yaml) 文件中的配置保持一致! 
+请务必确保 [.env](./docker/.env) 文件中的变量设置与 [service_conf.yaml](./docker/service_conf.yaml) 文件中的配置保持一致!
 
 > [./docker/README](./docker/README.md) 文件提供了环境变量设置和服务配置的详细信息。请**一定要**确保 [./docker/README](./docker/README.md) 文件当中列出来的环境变量的值与 [service_conf.yaml](./docker/service_conf.yaml) 文件当中的系统配置保持一致。
 
 如需更新默认的 HTTP 服务端口(80), 可以在 [docker-compose-CN.yml](./docker/docker-compose-CN.yml) 文件中将配置 `80:80` 改为 `<YOUR_SERVING_PORT>:80`。
 
 > 所有系统配置都需要通过系统重启生效:
-> 
+>
 > ```bash
 > $ docker compose up -f docker-compose-CN.yml -d
 > ```
@@ -172,4 +182,4 @@ $ docker compose up -d
 
 ## 🙌 贡献指南
 
-RAGFlow 只有通过开源协作才能蓬勃发展。秉持这一精神,我们欢迎来自社区的各种贡献。如果您有意参与其中,请查阅我们的[贡献者指南](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md)。 
+RAGFlow 只有通过开源协作才能蓬勃发展。秉持这一精神,我们欢迎来自社区的各种贡献。如果您有意参与其中,请查阅我们的[贡献者指南](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md)。
diff --git a/web/src/assets/logo-with-text.png b/web/src/assets/logo-with-text.png
new file mode 100644
index 0000000000000000000000000000000000000000..b55b5e0422fab33cc279681e5d7572f1cd5226d8
GIT binary patch
literal 8240
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
O081I94y=~52>l<Jlc%2m

literal 0
HcmV?d00001

diff --git a/web/src/layouts/components/header/index.tsx b/web/src/layouts/components/header/index.tsx
index c8f2403..4dc0191 100644
--- a/web/src/layouts/components/header/index.tsx
+++ b/web/src/layouts/components/header/index.tsx
@@ -55,7 +55,7 @@ const RagHeader = () => {
     >
       <Space size={12} onClick={handleLogoClick} className={styles.logoWrapper}>
         <Logo className={styles.appIcon}></Logo>
-        <span className={styles.appName}>RagFlow</span>
+        <span className={styles.appName}>RAGFlow</span>
       </Space>
       <Space size={[0, 8]} wrap>
         <Radio.Group
diff --git a/web/src/layouts/components/right-toolbar/index.tsx b/web/src/layouts/components/right-toolbar/index.tsx
index a4cce74..e5df898 100644
--- a/web/src/layouts/components/right-toolbar/index.tsx
+++ b/web/src/layouts/components/right-toolbar/index.tsx
@@ -1,6 +1,4 @@
-import { ReactComponent as MoonIcon } from '@/assets/svg/moon.svg';
-import { ReactComponent as TranslationIcon } from '@/assets/svg/translation.svg';
-import { BellOutlined, GithubOutlined } from '@ant-design/icons';
+import { GithubOutlined } from '@ant-design/icons';
 import { Space } from 'antd';
 import React from 'react';
 import User from '../user';
@@ -21,15 +19,12 @@ const RightToolBar = () => {
         <Circle>
           <GithubOutlined onClick={handleGithubCLick} />
         </Circle>
-        <Circle>
+        {/* <Circle>
           <TranslationIcon />
         </Circle>
-        <Circle>
-          <BellOutlined />
-        </Circle>
         <Circle>
           <MoonIcon />
-        </Circle>
+        </Circle> */}
         <User></User>
       </Space>
     </div>
diff --git a/web/src/pages/add-knowledge/components/knowledge-setting/configuration.tsx b/web/src/pages/add-knowledge/components/knowledge-setting/configuration.tsx
index f772eb2..1f4e05f 100644
--- a/web/src/pages/add-knowledge/components/knowledge-setting/configuration.tsx
+++ b/web/src/pages/add-knowledge/components/knowledge-setting/configuration.tsx
@@ -62,7 +62,7 @@ const ConfigurationForm = ({ form }: { form: FormInstance }) => {
       <Form.Item
         label="Language"
         name="language"
-        initialValue={'Chinese'}
+        initialValue={'English'}
         rules={[{ required: true, message: 'Please input your language!' }]}
       >
         <Select placeholder="select your language">
diff --git a/web/src/pages/add-knowledge/components/knowledge-setting/utils.ts b/web/src/pages/add-knowledge/components/knowledge-setting/utils.ts
index 48e141f..57d74c5 100644
--- a/web/src/pages/add-knowledge/components/knowledge-setting/utils.ts
+++ b/web/src/pages/add-knowledge/components/knowledge-setting/utils.ts
@@ -81,7 +81,7 @@ export const TextMap = {
     The résumé comes in a variety of formats, just like a person’s personality, but we often have to organize them into structured data that makes it easy to search.
     </p><p>
     Instead of chunking the résumé, we parse the résumé into structured data. As a HR, you can dump all the résumé you have, 
-    the you can list all the candidates that match the qualifications just by talk with <i>'RagFlow'</i>.
+    the you can list all the candidates that match the qualifications just by talk with <i>'RAGFlow'</i>.
     </p>
     `,
   },
diff --git a/web/src/pages/user-setting/setting-profile/index.tsx b/web/src/pages/user-setting/setting-profile/index.tsx
index bb3e3f9..952dc7b 100644
--- a/web/src/pages/user-setting/setting-profile/index.tsx
+++ b/web/src/pages/user-setting/setting-profile/index.tsx
@@ -8,7 +8,7 @@ import {
   getUploadFileListFromBase64,
   normFile,
 } from '@/utils/fileUtil';
-import { PlusOutlined, QuestionCircleOutlined } from '@ant-design/icons';
+import { PlusOutlined } from '@ant-design/icons';
 import {
   Button,
   Divider,
@@ -17,7 +17,6 @@ import {
   Select,
   Space,
   Spin,
-  Tooltip,
   Upload,
   UploadFile,
 } from 'antd';
@@ -108,9 +107,7 @@ const UserSettingProfile = () => {
           <Form.Item<FieldType>
             label={
               <div>
-                <Space>
-                  Your photo
-                </Space>
+                <Space>Your photo</Space>
                 <div>This will be displayed on your profile.</div>
               </div>
             }
@@ -177,8 +174,7 @@ const UserSettingProfile = () => {
               <Input disabled />
             </Form.Item>
             <p className={parentStyles.itemDescription}>
-              Once registered, an account cannot be changed and can only be
-              cancelled.
+              Once registered, E-mail cannot be changed.
             </p>
           </Form.Item>
           <Form.Item
-- 
GitLab