cognite-ai
A set of AI tools for working with CDF in Python.
MemoryVectorStore
Store and query vector embeddings created from CDF. This can enable a bunch of use cases where the number of vectors aren't that big.
Install the package
%pip install cognite-ai
Then you can create vectors from text (both multiple lines or a list of strings) like this
from cognite.ai import MemoryVectorStore
from cognite.client import CogniteClient
client = CogniteClient()
vector_store = MemoryVectorStore(client)
vector_store.store_text("Hi, I am a software engineer working for Cognite.")
vector_store.store_text("The moon is orbiting the earth, which is orbiting the sun.")
vector_store.store_text("Coffee can be a great way to stay awake.")
vector_store.query_text("I am tired, what can I do?")
Smart data frames
Chat with your data using LLMs. Built on top of PandasAI version 2.2.15. If you have loaded data into a Pandas dataframe, you can run
Install the package
%pip install cognite-ai
Chat with your data
from cognite.client import CogniteClient
from cognite.ai import load_pandasai
client = CogniteClient()
SmartDataframe, SmartDatalake, Agent = await load_pandasai()
workorders_df = client.raw.rows.retrieve_dataframe("tutorial_apm", "workorders", limit=-1)
workitems_df = client.raw.rows.retrieve_dataframe("tutorial_apm", "workitems", limit=-1)
workorder2items_df = client.raw.rows.retrieve_dataframe("tutorial_apm", "workorder2items", limit=-1)
workorder2assets_df = client.raw.rows.retrieve_dataframe("tutorial_apm", "workorder2assets", limit=-1)
assets_df = client.raw.rows.retrieve_dataframe("tutorial_apm", "assets", limit=-1)
smart_lake_df = SmartDatalake([workorders_df, workitems_df, assets_df, workorder2items_df, workorder2assets_df], cognite_client=client)
smart_lake_df.chat("Which workorders are the longest, and what work items do they have?")
s_workorders_df = SmartDataframe(workorders_df, cognite_client=client)
s_workorders_df.chat('Which 5 work orders are the longest?')
Configure LLM parameters
params = {
"model": "gpt-35-turbo",
"temperature": 0.5
}
s_workorders_df = SmartDataframe(workorders_df, cognite_client=client, params=params)
Pandas AI agent
We can also
from cognite.client import CogniteClient
from cognite.ai import load_pandasai
client = CogniteClient()
SmartDataframe, SmartDatalake, Agent = await load_pandasai()
sales_by_country_df = pd.DataFrame({
"country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
"revenue": [5000, 3200, 2900, 4100, 2300, 2100, 2500, 2600, 4500, 7000]
})
agent = Agent(sales_by_country_df, cognite_client=client)
print(agent.chat("Which are the top 5 countries by sales?"))