forked from phoenix-oss/llama-stack-mirror
# What does this PR do? This PR adds an additional page to the playground called "Tools". This page connects to a llama-stack server and lists all the available LLM models, builtin tools and MCP tools in the sidebar. Users can select whatever combination of model and tools they want from the sidebar for their agent. Once the selections are made, users can chat with their agent similarly to the RAG page and test out agent tool use. closes #1902 ## Test Plan Ran the following commands with a llama-stack server and the updated playground worked as expected. ``` export LLAMA_STACK_ENDPOINT="http://localhost:8321" streamlit run llama_stack/distribution/ui/app.py ``` [//]: # (## Documentation) Signed-off-by: Michael Clifford <mcliffor@redhat.com>
55 lines
1.6 KiB
Python
55 lines
1.6 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 streamlit as st
|
|
|
|
|
|
def main():
|
|
# Evaluation pages
|
|
application_evaluation_page = st.Page(
|
|
"page/evaluations/app_eval.py",
|
|
title="Evaluations (Scoring)",
|
|
icon="📊",
|
|
default=False,
|
|
)
|
|
native_evaluation_page = st.Page(
|
|
"page/evaluations/native_eval.py",
|
|
title="Evaluations (Generation + Scoring)",
|
|
icon="📊",
|
|
default=False,
|
|
)
|
|
|
|
# Playground pages
|
|
chat_page = st.Page("page/playground/chat.py", title="Chat", icon="💬", default=True)
|
|
rag_page = st.Page("page/playground/rag.py", title="RAG", icon="💬", default=False)
|
|
tool_page = st.Page("page/playground/tools.py", title="Tools", icon="🛠", default=False)
|
|
|
|
# Distribution pages
|
|
resources_page = st.Page("page/distribution/resources.py", title="Resources", icon="🔍", default=False)
|
|
provider_page = st.Page(
|
|
"page/distribution/providers.py",
|
|
title="API Providers",
|
|
icon="🔍",
|
|
default=False,
|
|
)
|
|
|
|
pg = st.navigation(
|
|
{
|
|
"Playground": [
|
|
chat_page,
|
|
rag_page,
|
|
tool_page,
|
|
application_evaluation_page,
|
|
native_evaluation_page,
|
|
],
|
|
"Inspect": [provider_page, resources_page],
|
|
},
|
|
expanded=False,
|
|
)
|
|
pg.run()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|