You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: test2text/pages/documentation.py
+29-9Lines changed: 29 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,7 @@
1
1
importstreamlitasst
2
2
3
+
fromtest2text.services.dbimportget_db_client
4
+
3
5
4
6
defshow_documentation():
5
7
st.markdown("""
@@ -9,32 +11,50 @@ def show_documentation():
9
11
10
12
**Test2Text** is a tool for computing requirement's coverage by tests and generating relevant reports.
11
13
The application provides a convenient interface for analysis the relationships between test cases and requirements.
14
+
12
15
""")
13
16
st.divider()
14
17
st.markdown("""
15
18
## HOW TO USE
16
19
17
20
### Upload data
18
-
Click :gray-badge[:material/database_upload: Annotations] or :gray-badge[:material/database_upload: Requirements] to upload annotations and requirements from CSV files to the app's database.
21
+
Click :gray-badge[:material/database_upload: Annotations] or :gray-badge[:material/database_upload: Requirements] to upload annotations and requirements from CSV files to the app's database.
22
+
Then Annotations and Requirements are loaded and Test cases are linked to Annotations go to the next chapter.
19
23
20
24
### Renew data
21
25
Click :gray-badge[:material/cached: Controls] to transform missed and new texts into numeral vectors (embeddings).
22
-
Update distances by embeddings for intelligent matching of requirements and annotations.
26
+
Update distances by embeddings for intelligent matching of Requirements and Annotations.
27
+
After distances are refreshed (all Annotations linked with Requirement by distances) go to the next chapter.
23
28
24
29
### Generate reports
25
30
Click :gray-badge[:material/publish: Requirement's Report] or :gray-badge[:material/publish: Test cases Report] to make a report.
26
-
Use filters to select desired information. Analyze selected requirements or test cases by showed and plotted distances
31
+
Use filters and Smart search based on embeddings to select desired information.
32
+
Analyze selected requirements or test cases by plotted distances.
33
+
List of all requirements/test cases and their annotations are shown here.
27
34
28
35
### Visualize saved data
29
-
Click :gray-badge[:material/dataset: Visualize vectors] to plot distances between vector representations of all requirements and annotations.
36
+
Click :gray-badge[:material/dataset: Visualize vectors] to plot distances between vector representations of all requirements and annotations in multidimensional spaces.
The application use a pre-trained transformer model from the [sentence-transformers library](https://huggingface.co/sentence-transformers), specifically [nomic-ai/nomic-embed-text-v1](https://huggingface.co/nomic-ai/nomic-embed-text-v1), a model trained to produce high-quality vector embeddings for text.
36
56
The model returns, for each input text, a high-dimensional NumPy array (vector) of floating point numbers (the embedding).
37
-
This arrays give us a possibility to calculate Euclidian distances between test cases annotations and requirements to view how similar or dissimilar the two texts.
57
+
This arrays give a possibility to calculate Euclidian distances between test cases annotations and requirements to show how similar or dissimilar the two texts.
38
58
""")
39
59
40
60
st.markdown("""
@@ -46,26 +66,26 @@ def show_documentation():
46
66
Suppose we have two vectors:
47
67
""")
48
68
st.latex(r"""
49
-
[ \mathbf{a} = [a_1, a_2, ..., a_n] ],
69
+
\mathbf{a} = [a_1, a_2, ..., a_n] ,
50
70
""")
51
71
st.latex(r"""
52
-
[ \mathbf{b} = [b_1, b_2, ..., b_n] ]
72
+
\mathbf{b} = [b_1, b_2, ..., b_n]
53
73
""")
54
74
55
75
st.markdown("""
56
76
The L2 distance between **a** and **b** is calculated as:
0 commit comments