rllm.llm.Enhancer¶
- class rllm.llm.Enhancer(prompt: BasePromptTemplate | None = None, llm: LLM | None = None, llm_embed: LLM | None = None, type: Literal['explanation|embedding', 'explanation', 'embedding'] | None = 'explanation|embedding')[source]¶
Bases:
objectEnhancer for relational data. Data should be organized into a
pandas.dataframeformat. If attribute type is ‘explanation|embedding’, enhancer will explain them firstly and embedding them into vectors.- Parameters:
prompt (Optional[
rllm.llm.prompt.base.BasePromptTemplate]) – The prompt to instruct llm make enhancement.llm (
rllm.llm.llm_module.general_llm.LLM) – The llm used for explanation, it is recommended to be initialized with LangChain. Only useful in explanation step.llm_embed (
rllm.llm.llm_module.general_llm.LLM) – The llm used for embedding, it is recommended to be initialized with LangChain. Only useful in embedding step.(Optional[ (type) – Literal[‘explanation|embedding’, ‘explanation’, ‘embedding’] ]): Task type, default type is ‘explanation|embedding’.
Explanation|Embedding:
import pandas as pd from langchain_openai import OpenAI, OpenAIEmbeddings from rllm.llm import LangChainLLM, Enhancer data = pd.read_csv('data.csv') scenario = 'Your_task_description' llm = LangChainLLM(OpenAI(openai_api_key="YOUR_API_KEY")) llm_embed = LangChainLLM( OpenAIEmbeddings(openai_api_key="YOUR_API_KEY") ) enhancer = Enhancer( llm=llm, llm_embed=llm_embed, type='explanation|embedding' ) outputs = enhancer(data.head(10), scenario=scenario)
Explanation:
import pandas as pd from langchain_openai import OpenAI from rllm.llm import LangChainLLM, Enhancer data = pd.read_csv('data.csv') scenario = 'Your_task_description' llm = LangChainLLM(OpenAI(openai_api_key="YOUR_API_KEY")) enhancer = Enhancer(llm=llm, type='explanation') outputs = enhancer(data.head(10), scenario=scenario)
Embedding:
import pandas as pd from langchain.embeddings import OpenAIEmbeddings from rllm.llm import LangChainLLM, Enhancer data = pd.read_csv('data.csv') scenario = 'Your_task_description' llm = LangChainLLM(OpenAIEmbeddings(openai_api_key="YOUR_API_KEY")) enhancer = Enhancer(llm_embed=llm, type='embedding') # Embedding columns 'text' and 'explanation' outputs = enhancer(data, cols=['text', 'explanation'])