gradio langchain pymupdf openai chromadb tiktoken