diff --git a/docs/developer_guides/appendix_a_basic_components.md b/docs/developer_guides/appendix_a_basic_components.md
index fae24dba0f9f841732b4e3635d13cbee2786bb6f..2de74ce2be7b8f5558247ef35618310853fb9e12 100644
--- a/docs/developer_guides/appendix_a_basic_components.md
+++ b/docs/developer_guides/appendix_a_basic_components.md
@@ -286,7 +286,7 @@ func NewIdAllocator(ctx context.Context) *IdAllocator
 
 Let's take a brief review of Hybrid Logical Clock (HLC). HLC uses 64bits timestamps which are composed of a 46-bits physical component (thought of as and always close to local wall time) and a 18-bits logical component (used to distinguish between events with the same physical component).
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/hlc.png" width=400>
+<img src="./figs/hlc.png" width=400>
 
 HLC's logical part is advanced on each request. The phsical part can be increased in two cases: 
 
diff --git a/docs/developer_guides/chap01_system_overview.md b/docs/developer_guides/chap01_system_overview.md
index 7e28845808d8a4c7186193383e22410e36715e58..eefd360c894a3de76e2a13c352c876668ccf2f34 100644
--- a/docs/developer_guides/chap01_system_overview.md
+++ b/docs/developer_guides/chap01_system_overview.md
@@ -26,7 +26,7 @@ A batch insert/delete is guaranteed to become visible atomically.
 
 
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/data_organization.png" width=550>
+<img src="./figs/data_organization.png" width=550>
 
 In Milvus, 'collection' refers to the concept of table. A collection can be optionally divided into several 'partitions'. Both collection and partition are the basic execution scopes of queries. When use parition, users should clearly know how a collection should be partitioned. In most cases, parition leads to more flexible data management and more efficient quering. For a partitioned collection, queries can be executed both on the collection or a set of specified partitions.
 
@@ -40,7 +40,7 @@ Each collection or parition contains a set of 'segment groups'. Segment group is
 
 
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/system_framework.png" width=800>
+<img src="./figs/system_framework.png" width=800>
 
 The main components, proxy, WAL, query node and write node can scale to multiple instances. These components scale seperately for better tradeoff between availability and cost.
 
@@ -58,7 +58,7 @@ Note that not all the components are necessarily replicated. The system provides
 
 #### 1.4 State Synchronization
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/state_sync.png" width=800>
+<img src="./figs/state_sync.png" width=800>
 
 Data in Milvus have three different forms, namely WAL, binlog, and index. As mentioned in the previous section, WAL can be viewed as a determined operation stream. Other two data forms keep themselves up to date by performing the operation stream in time order.
 
diff --git a/docs/developer_guides/chap06_master.md b/docs/developer_guides/chap06_master.md
index 542e587098a0b7dd27a86ec6186f0f245d747416..b429cca37106d110bc55bb817dcf3a6dc0b5e825 100644
--- a/docs/developer_guides/chap06_master.md
+++ b/docs/developer_guides/chap06_master.md
@@ -234,7 +234,7 @@ func NewMetaTable(kv kv.TxnBase) (*metaTable,error)
 * Soft Time Tick Barrier
 
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/soft_time_tick_barrier.png" width=500>
+<img src="./figs/soft_time_tick_barrier.png" width=500>
 
 ```go
 type softTimeTickBarrier struct {
@@ -256,7 +256,7 @@ func newSoftTimeTickBarrier(ctx context.Context, ttStream *MsgStream, peerIds []
 
 * Hard Time Tick Barrier
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/hard_time_tick_barrier.png" width=420>
+<img src="./figs/hard_time_tick_barrier.png" width=420>
 
 ```go
 type hardTimeTickBarrier struct {
@@ -276,7 +276,7 @@ func newHardTimeTickBarrier(ctx context.Context, ttStream *MsgStream, peerIds []
 
 ###### 10.5.1 Time Synchronization Message Producer
 
-<img src="/Users/grt/Project/grt/milvus-distributed/docs/developer_guides/figs/time_sync_msg_producer.png" width=700>
+<img src="./figs/time_sync_msg_producer.png" width=700>
 
 
  ```go