北京 手机网站建设,wordpress登录插件,公益网站设计,徐闻住房与城乡建设局网站基础任务
任务要求#xff1a;基于 LlamaIndex 构建自己的 RAG 知识库#xff0c;寻找一个问题 A 在使用 LlamaIndex 之前InternLM2-Chat-1.8B模型不会回答#xff0c;借助 LlamaIndex 后 InternLM2-Chat-1.8B 模型具备回答 A 的能力#xff0c;截图保存。
streamlit界面…
基础任务
任务要求基于 LlamaIndex 构建自己的 RAG 知识库寻找一个问题 A 在使用 LlamaIndex 之前InternLM2-Chat-1.8B模型不会回答借助 LlamaIndex 后 InternLM2-Chat-1.8B 模型具备回答 A 的能力截图保存。
streamlit界面代码
import streamlit as st
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings
from llama_index.embeddings.huggingface import HuggingFaceEmbedding
from llama_index.llms.huggingface import HuggingFaceLLMst.set_page_config(page_titlellama_index_demo, page_icon)
st.title(llama_index_demo)# 初始化模型
st.cache_resource
def init_models():embed_model HuggingFaceEmbedding(model_name/root/model/sentence-transformer)Settings.embed_model embed_modelllm HuggingFaceLLM(model_name/root/model/internlm2-chat-1_8b,tokenizer_name/root/model/internlm2-chat-1_8b,model_kwargs{trust_remote_code: True},tokenizer_kwargs{trust_remote_code: True})Settings.llm llmdocuments SimpleDirectoryReader(/root/llamaindex_demo/data).load_data()index VectorStoreIndex.from_documents(documents)query_engine index.as_query_engine()return query_engine# 检查是否需要初始化模型
if query_engine not in st.session_state:st.session_state[query_engine] init_models()def greet2(question):response st.session_state[query_engine].query(question)return response# Store LLM generated responses
if messages not in st.session_state.keys():st.session_state.messages [{role: assistant, content: 你好我是你的助手有什么我可以帮助你的吗}] # Display or clear chat messages
for message in st.session_state.messages:with st.chat_message(message[role]):st.write(message[content])def clear_chat_history():st.session_state.messages [{role: assistant, content: 你好我是你的助手有什么我可以帮助你的吗}]st.sidebar.button(Clear Chat History, on_clickclear_chat_history)# Function for generating LLaMA2 response
def generate_llama_index_response(prompt_input):return greet2(prompt_input)# User-provided prompt
if prompt : st.chat_input():st.session_state.messages.append({role: user, content: prompt})with st.chat_message(user):st.write(prompt)# Gegenerate_llama_index_response last message is not from assistant
if st.session_state.messages[-1][role] ! assistant:with st.chat_message(assistant):with st.spinner(Thinking...):response generate_llama_index_response(prompt)placeholder st.empty()placeholder.markdown(response)message {role: assistant, content: response}st.session_state.messages.append(message)任务完成结果截图
1. 先问问浦语家的xtuner是什么 确认这个模型是不知道xtuner是什么再加入xtuner的文档再尝试一遍 2. 再问问2024奥运会举办在哪里
from llama_index.llms.huggingface import HuggingFaceLLM
from llama_index.core.llms import ChatMessage
llm HuggingFaceLLM(model_name/root/model/internlm2-chat-1_8b,tokenizer_name/root/model/internlm2-chat-1_8b,model_kwargs{trust_remote_code:True},tokenizer_kwargs{trust_remote_code:True}
)rsp llm.chat(messages[ChatMessage(content2024奥运会举办在哪里)])
print(rsp)也不知道再找到百度百科的资料加入data中