# Llamma index Saving and Loading

**URL:** <https://discuss.huggingface.co/t/llamma-index-saving-and-loading/67491>\
**Category:** Intermediate\
**Created:** [December 30, 2023, 6:07pm UTC](https://discuss.huggingface.co/t/llamma-index-saving-and-loading/67491 "2023-12-30T18:07:24Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![AgelZin](https://avatars.discourse-cdn.com/v4/letter/a/6bbea6/32.png) [@AgelZin](https://discuss.huggingface.co/u/AgelZin)\
**Post date:** [December 30, 2023, 6:07pm UTC](https://discuss.huggingface.co/t/llamma-index-saving-and-loading/67491/1 "2023-12-30T18:07:24Z")

</div>

I create a llamma2 model and could query with it with no problems and then i saved it like this.

> index.storage\_context.persist(persist\_dir=“\<persist\_dir\_xara\>”)

After loading i encountered a weird error

# rebuild storage context

storage\_context = StorageContext.from\_defaults(persist\_dir=“\<persist\_dir\_xara\>”)

# load index

index = load\_index\_from\_storage(storage\_context)

query\_engine = index.as\_query\_engine()  
response = query\_engine.query(“random message”)

* * *

ValueError Traceback (most recent call last)  
Cell In[12], line 2  
1 query\_engine = index.as\_query\_engine()  
----\> 2 response = query\_engine.query(“a”)

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/core/base\_query\_engine.py:30, in BaseQueryEngine.query(self, str\_or\_query\_bundle)  
28 if isinstance(str\_or\_query\_bundle, str):  
29 str\_or\_query\_bundle = QueryBundle(str\_or\_query\_bundle)  
—\> 30 return self.\_query(str\_or\_query\_bundle)

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/query\_engine/retriever\_query\_engine.py:170, in RetrieverQueryEngine.\_query(self, query\_bundle)  
166 “”“Answer a query.”“”  
167 with self.callback\_manager.event(  
168 CBEventType.QUERY, payload={EventPayload.QUERY\_STR: query\_bundle.query\_str}  
169 ) as query\_event:  
 → 170 nodes = self.retrieve(query\_bundle)  
171 response = self.\_response\_synthesizer.synthesize(  
172 query=query\_bundle,  
173 nodes=nodes,  
174 )  
176 query\_event.on\_end(payload={EventPayload.RESPONSE: response})

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/query\_engine/retriever\_query\_engine.py:126, in RetrieverQueryEngine.retrieve(self, query\_bundle)  
125 def retrieve(self, query\_bundle: QueryBundle) → List[NodeWithScore]:  
 → 126 nodes = self.\_retriever.retrieve(query\_bundle)  
127 return self.\_apply\_node\_postprocessors(nodes, query\_bundle=query\_bundle)

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/core/base\_retriever.py:54, in BaseRetriever.retrieve(self, str\_or\_query\_bundle)  
49 with self.callback\_manager.as\_trace(“query”):  
50 with self.callback\_manager.event(  
51 CBEventType.RETRIEVE,  
52 payload={EventPayload.QUERY\_STR: query\_bundle.query\_str},  
53 ) as retrieve\_event:  
—\> 54 nodes = self.\_retrieve(query\_bundle)  
55 retrieve\_event.on\_end(  
56 payload={EventPayload.NODES: nodes},  
57 )  
58 return nodes

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/indices/vector\_store/retrievers/retriever.py:88, in VectorIndexRetriever.\_retrieve(self, query\_bundle)  
82 if query\_bundle.embedding is None and len(query\_bundle.embedding\_strs) \> 0:  
83 query\_bundle.embedding = (  
84 self.\_service\_context.embed\_model.get\_agg\_embedding\_from\_queries(  
85 query\_bundle.embedding\_strs  
86 )  
87 )  
—\> 88 return self.\_get\_nodes\_with\_embeddings(query\_bundle)

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/indices/vector\_store/retrievers/retriever.py:164, in VectorIndexRetriever.\_get\_nodes\_with\_embeddings(self, query\_bundle\_with\_embeddings)  
160 def \_get\_nodes\_with\_embeddings(  
161 self, query\_bundle\_with\_embeddings: QueryBundle  
162 ) → List[NodeWithScore]:  
163 query = self.\_build\_vector\_store\_query(query\_bundle\_with\_embeddings)  
 → 164 query\_result = self.\_vector\_store.query(query, \*\*self.\_kwargs)  
165 return self.\_build\_node\_list\_from\_query\_result(query\_result)

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/vector\_stores/simple.py:274, in SimpleVectorStore.query(self, query, \*\*kwargs)  
266 top\_similarities, top\_ids = get\_top\_k\_mmr\_embeddings(  
267 query\_embedding,  
268 embeddings,  
(…)  
271 mmr\_threshold=mmr\_threshold,  
272 )  
273 elif query.mode == VectorStoreQueryMode.DEFAULT:  
 → 274 top\_similarities, top\_ids = get\_top\_k\_embeddings(  
275 query\_embedding,  
276 embeddings,  
277 similarity\_top\_k=query.similarity\_top\_k,  
278 embedding\_ids=node\_ids,  
279 )  
280 else:  
281 raise ValueError(f"Invalid query mode: {query.mode}")

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/indices/query/embedding\_utils.py:31, in get\_top\_k\_embeddings(query\_embedding, embeddings, similarity\_fn, similarity\_top\_k, embedding\_ids, similarity\_cutoff)  
29 similarity\_heap: List[Tuple[float, Any]] =   
30 for i, emb in enumerate(embeddings\_np):  
—\> 31 similarity = similarity\_fn(query\_embedding\_np, emb)  
32 if similarity\_cutoff is None or similarity \> similarity\_cutoff:  
33 heapq.heappush(similarity\_heap, (similarity, embedding\_ids[i]))

File /srv/scratch3/zinonos/zin/lib/python3.10/site-packages/llama\_index/embeddings/base.py:47, in similarity(embedding1, embedding2, mode)  
45 return np.dot(embedding1, embedding2)  
46 else:  
—\> 47 product = np.dot(embedding1, embedding2)  
48 norm = np.linalg.norm(embedding1) \* np.linalg.norm(embedding2)  
49 return product / norm

ValueError: shapes (1536,) and (768,) not aligned: 1536 (dim 0) != 768 (dim 0)

---

<div class="post-metadata">

**Author:** ![AgelZin](https://avatars.discourse-cdn.com/v4/letter/a/6bbea6/32.png) [@AgelZin](https://discuss.huggingface.co/u/AgelZin)\
**Post date:** [January 2, 2024, 12:39pm UTC](https://discuss.huggingface.co/t/llamma-index-saving-and-loading/67491/2 "2024-01-02T12:39:27Z")

</div>

Solved. Have to adjust code like this else it loads default embedings

> index = load\_index\_from\_storage(storage\_context, service\_context=service\_context)
