forked from phoenix-oss/llama-stack-mirror
# What does this PR do? New Pages Added: - (1) Inspect Distro - (2) Evaluations: - (a) native evaluations (including generation) - (b) application evaluations (no generation, scoring only) - (3) Playground: - (a) chat - (b) RAG ## Test Plan ``` streamlit run app.py ``` #### Playground https://github.com/user-attachments/assets/6ca617e8-32ca-49b2-9774-185020ff5204 #### Inspect https://github.com/user-attachments/assets/01d52b2d-92af-4e3a-b623-a9b8ba22ba99 #### Evaluations (Generation + Scoring) https://github.com/user-attachments/assets/345845c7-2a2b-4095-960a-9ae40f6a93cf #### Evaluations (Scoring) https://github.com/user-attachments/assets/6cc1659f-eba4-49ca-a0a5-7c243557b4f5 ## Before submitting - [ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case). - [ ] Ran pre-commit to handle lint / formatting issues. - [ ] Read the [contributor guideline](https://github.com/meta-llama/llama-stack/blob/main/CONTRIBUTING.md), Pull Request section? - [ ] Updated relevant documentation. - [ ] Wrote necessary unit or integration tests.
42 lines
1.1 KiB
Python
42 lines
1.1 KiB
Python
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
# All rights reserved.
|
|
#
|
|
# This source code is licensed under the terms described in the LICENSE file in
|
|
# the root directory of this source tree.
|
|
|
|
import base64
|
|
import os
|
|
|
|
import pandas as pd
|
|
import streamlit as st
|
|
|
|
|
|
def process_dataset(file):
|
|
if file is None:
|
|
return "No file uploaded", None
|
|
|
|
try:
|
|
# Determine file type and read accordingly
|
|
file_ext = os.path.splitext(file.name)[1].lower()
|
|
if file_ext == ".csv":
|
|
df = pd.read_csv(file)
|
|
elif file_ext in [".xlsx", ".xls"]:
|
|
df = pd.read_excel(file)
|
|
else:
|
|
return "Unsupported file format. Please upload a CSV or Excel file.", None
|
|
|
|
return df
|
|
|
|
except Exception as e:
|
|
st.error(f"Error processing file: {str(e)}")
|
|
return None
|
|
|
|
|
|
def data_url_from_file(file) -> str:
|
|
file_content = file.getvalue()
|
|
base64_content = base64.b64encode(file_content).decode("utf-8")
|
|
mime_type = file.type
|
|
|
|
data_url = f"data:{mime_type};base64,{base64_content}"
|
|
|
|
return data_url
|