You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Python: Update Postgres Connector to new Design #7000
Trying to use the connector but i'm getting this error when i try to import the postgres memory store
from semantic_kernel.connectors.memory.postgres import PostgresMemoryStore
semantic_kernel\connectors\memory\postgres\__init__.py:3
from semantic_kernel.connectors.memory.postgres.postgres_memory_store import (PostgresMemoryStore)
semantic_kernel\connectors\memory\postgres\postgres_memory_store.py:9
from psycopg import Cursor
ModuleNotFoundError: No module named 'psycopg'
value = memory_store.retrieve('some_key')
print(f'Retrieved value: {value}')
Close the connection when done
connection.close()
Explanation:
Install Dependencies: Ensure you have the psycopg and semantic-kernel packages installed.
Database Connection Parameters: Update the db_params dictionary with your PostgreSQL database credentials.
Create Connection: Establish a connection to the PostgreSQL database using psycopg2.connect.
Initialize PostgresMemoryStore: Create an instance of PostgresMemoryStore using the database connection.
Initialize Kernel: Pass the memory store to the Kernel initializer.
Example Usage: Demonstrates storing and retrieving data from the memory store.
Close Connection: Ensure the database connection is closed after operations are completed.
Niladri Dutta (@Niladri24dutta)Mahesh Budarapu (@MaheshBudarapu) all memory connectors including this one will move over to the new memory connector model, over the next few weeks, if you want to contribute that would be great! The Azure AI Search, Redis and Qdrant connectors already have a new version (it is based on VectorStore and VectorStoreRecordCollection), we are finalizing the search side of things (CRUD is in those base classes), so once that is finalized then we can push to port the others, but you could give a start to that effort! We'll also keep this issue open to make sure we check the postgres package used.
Activity
[-]SK memory connector to postgres[/-][+]Python: SK memory connector to postgres[/+]MaheshBudarapu commentedon Jun 28, 2024
Install Dependencies:
Make sure you have the required dependencies installed:
pip install psycopg
pip install semantic-kernel
from semantic_kernel import Kernel
from semantic_kernel.connectors.memory.postgres import PostgresMemoryStore
import psycopg2
Database connection parameters
db_params = {
'dbname': 'your_database_name',
'user': 'your_username',
'password': 'your_password',
'host': 'your_host',
'port': 'your_port'
}
Create a connection to the database
connection = psycopg2.connect(**db_params)
Initialize the PostgresMemoryStore
memory_store = PostgresMemoryStore(connection)
Initialize the Kernel with the memory store
kernel = Kernel(memory_store=memory_store)
Example: Using the memory store
Store some data
memory_store.store('some_key', 'some_value')
Retrieve stored data
value = memory_store.retrieve('some_key')
print(f'Retrieved value: {value}')
Close the connection when done
connection.close()
Explanation:
Install Dependencies: Ensure you have the psycopg and semantic-kernel packages installed.
Database Connection Parameters: Update the db_params dictionary with your PostgreSQL database credentials.
Create Connection: Establish a connection to the PostgreSQL database using psycopg2.connect.
Initialize PostgresMemoryStore: Create an instance of PostgresMemoryStore using the database connection.
Initialize Kernel: Pass the memory store to the Kernel initializer.
Example Usage: Demonstrates storing and retrieving data from the memory store.
Close Connection: Ensure the database connection is closed after operations are completed.
[-]Python: SK memory connector to postgres[/-][+]Python: Update Postgres[/+][-]Python: Update Postgres[/-][+]Python: Update Postgres Connector to new Design[/+]Niladri24dutta commentedon Sep 12, 2024
EvanChaki (@evchaki) is anyone working on this bug?
evchaki commentedon Sep 12, 2024
Eduard van Valkenburg (@eavanvalkenburg) - is this one you are working on with the new memory package?
eavanvalkenburg commentedon Sep 16, 2024
Niladri Dutta (@Niladri24dutta) Mahesh Budarapu (@MaheshBudarapu) all memory connectors including this one will move over to the new memory connector model, over the next few weeks, if you want to contribute that would be great! The Azure AI Search, Redis and Qdrant connectors already have a new version (it is based on VectorStore and VectorStoreRecordCollection), we are finalizing the search side of things (CRUD is in those base classes), so once that is finalized then we can push to port the others, but you could give a start to that effort! We'll also keep this issue open to make sure we check the postgres package used.