SeanLee97 commited on
Commit
7efe68b
1 Parent(s): a009061

add sentence transformer usage

Browse files
Files changed (1) hide show
  1. README.md +46 -11
README.md CHANGED
@@ -2622,7 +2622,7 @@ Follow us on:
2622
 
2623
 
2624
  # Usage
2625
-
2626
 
2627
  ```bash
2628
  python -m pip install -U angle-emb
@@ -2630,31 +2630,66 @@ python -m pip install -U angle-emb
2630
 
2631
  1) Non-Retrieval Tasks
2632
 
 
 
2633
  ```python
2634
  from angle_emb import AnglE
 
2635
 
2636
  angle = AnglE.from_pretrained('WhereIsAI/UAE-Large-V1', pooling_strategy='cls').cuda()
2637
- vec = angle.encode('hello world', to_numpy=True)
2638
- print(vec)
2639
- vecs = angle.encode(['hello world1', 'hello world2'], to_numpy=True)
2640
- print(vecs)
 
 
 
 
 
2641
  ```
2642
 
2643
  2) Retrieval Tasks
2644
 
2645
- For retrieval purposes, please use the prompt `Prompts.C`.
2646
 
2647
  ```python
2648
  from angle_emb import AnglE, Prompts
 
2649
 
2650
  angle = AnglE.from_pretrained('WhereIsAI/UAE-Large-V1', pooling_strategy='cls').cuda()
2651
- angle.set_prompt(prompt=Prompts.C)
2652
- vec = angle.encode({'text': 'hello world'}, to_numpy=True)
2653
- print(vec)
2654
- vecs = angle.encode([{'text': 'hello world1'}, {'text': 'hello world2'}], to_numpy=True)
2655
- print(vecs)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2656
  ```
2657
 
 
 
2658
  # Citation
2659
 
2660
  If you use our pre-trained models, welcome to support us by citing our work:
 
2622
 
2623
 
2624
  # Usage
2625
+ ## 1. angle_emb
2626
 
2627
  ```bash
2628
  python -m pip install -U angle-emb
 
2630
 
2631
  1) Non-Retrieval Tasks
2632
 
2633
+ There is no need to specify any prompts.
2634
+
2635
  ```python
2636
  from angle_emb import AnglE
2637
+ from scipy import spatial
2638
 
2639
  angle = AnglE.from_pretrained('WhereIsAI/UAE-Large-V1', pooling_strategy='cls').cuda()
2640
+ doc_vecs = angle.encode([
2641
+ 'The weather is great!',
2642
+ 'The weather is very good!',
2643
+ 'i am going to bed'
2644
+ ])
2645
+
2646
+ for i, dv1 in enumerate(doc_vecs):
2647
+ for dv2 in doc_vecs[i+1:]:
2648
+ print(1 - spatial.distance.cosine(dv1, dv2))
2649
  ```
2650
 
2651
  2) Retrieval Tasks
2652
 
2653
+ For retrieval purposes, please use the prompt `Prompts.C` for query (not for document).
2654
 
2655
  ```python
2656
  from angle_emb import AnglE, Prompts
2657
+ from scipy import spatial
2658
 
2659
  angle = AnglE.from_pretrained('WhereIsAI/UAE-Large-V1', pooling_strategy='cls').cuda()
2660
+ qv = angle.encode(Prompts.C.format(text='what is the weather?'))
2661
+ doc_vecs = angle.encode([
2662
+ 'The weather is great!',
2663
+ 'it is rainy today.',
2664
+ 'i am going to bed'
2665
+ ])
2666
+
2667
+ for dv in doc_vecs:
2668
+ print(1 - spatial.distance.cosine(qv[0], dv))
2669
+ ```
2670
+
2671
+ ## 2. sentence transformer
2672
+
2673
+
2674
+ ```python
2675
+ from angle_emb import Prompts
2676
+ from sentence_transformers import SentenceTransformer
2677
+
2678
+ model = SentenceTransformer("WhereIsAI/UAE-Large-V1").cuda()
2679
+
2680
+ qv = model.encode(Prompts.C.format(text='what is the weather?'))
2681
+ doc_vecs = model.encode([
2682
+ 'The weather is great!',
2683
+ 'it is rainy today.',
2684
+ 'i am going to bed'
2685
+ ])
2686
+
2687
+ for dv in doc_vecs:
2688
+ print(1 - spatial.distance.cosine(qv, dv))
2689
  ```
2690
 
2691
+
2692
+
2693
  # Citation
2694
 
2695
  If you use our pre-trained models, welcome to support us by citing our work: