File size: 1,341 Bytes
58e78d3
13ba238
 
250af9b
13ba238
 
 
250af9b
 
 
 
13ba238
 
250af9b
13ba238
 
 
 
 
250af9b
13ba238
 
 
 
250af9b
13ba238
250af9b
13ba238
250af9b
13ba238
250af9b
13ba238
 
 
 
250af9b
13ba238
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import streamlit as st
import pandas as pd

# 假设你的数据存储在一个CSV文件中,我们将从这个文件中读取数据
def load_data():
    return pd.read_csv("benchmark_data.csv")

# 不区分大小写的搜索功能
def case_insensitive_search(data, query, column):
    if query:  # 如果用户输入了搜索词
        return data[data[column].str.lower().str.contains(query.lower())]
    return data

# 页面布局和功能
def main():
    st.title("Multihop-RAG Benchmark Space")

    data = load_data()

    # 添加搜索框
    st.sidebar.header("Search Options")
    framework_query = st.sidebar.text_input("Search by Framework")
    model_query = st.sidebar.text_input("Search by Model")

    # 根据输入执行搜索
    if framework_query:
        data = case_insensitive_search(data, framework_query, 'framework')
    if model_query:
        data = case_insensitive_search(data, model_query, 'model')

    # 显示数据
    st.header("Benchmark Results")
    st.write("Displaying results for MRR@10 and Hit@10 across different frameworks, models, and chunk sizes.")
    st.dataframe(data)

    # 数据统计和图表
    if st.sidebar.checkbox("Show Metrics Distribution"):
        st.subheader("Metrics Distribution")
        st.bar_chart(data[['MRR@10', 'Hit@10']])

if __name__ == "__main__":
    main()