AI Agents for Data Scientists
12:02
Llama3.2 - Tiny But Mighty
10:14
Anthropic Claude - Prompt Caching
9:30
Пікірлер
@ursusss
@ursusss 20 сағат бұрын
Out of all the channels, your explanations are the most easy to understand. Thanks so much
@wah866sky7
@wah866sky7 3 күн бұрын
How can I collect the CSV files and all training image files for the Sagemaker Course? Thanks
@SandeepS-i4e
@SandeepS-i4e 6 күн бұрын
Can it be used for pdfs or douments containing images and tables also? Could you pls do a video on that also?
@AIWhale3
@AIWhale3 6 күн бұрын
Which database do you recommend with LightRAG? Do you need both a vector and graph database?
@amruth505
@amruth505 7 күн бұрын
can we do the same with Azure open AI?
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
Yes, we can.
@tonyseno
@tonyseno 8 күн бұрын
Can the LightRAG show the references including the page numbers it refers to?
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
It doesn't have that feature out of the box, but the source code can be modified to save page number info as metadata for the nodes and can be returned to the user. Its not an easy task though...
@amruth505
@amruth505 8 күн бұрын
why not use LLMGraphTransformer?
@kk008
@kk008 9 күн бұрын
Can I use Knowledge graph (RDF format) as input or what process I need to do ?
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
GraphRAG builds its own custom Knowledge graph with some new concepts like communities and summaries. We can't use RDF KGs GraphRAG unless you modify the source code substantially. I think, the best approach would be to build a RAG on top of your RDF KG. With all these RAG's the main thing, extracting the information relevant to the query and providing that to an LLM to create an answer.
@kk008
@kk008 3 күн бұрын
@@SridharKumarKannam thanks for the answer. :) Yes, as it generates KG internally, its not a good idea to modify source code right now as it is already have many open issues for GRAPHRAG. I didn't find any good implementation source to build RAG on top of my RDF KG.
@piotrbjastrzebski
@piotrbjastrzebski 10 күн бұрын
Good stuff! Thank you!!! Has anybody tried with Ollama Open source models, consistently I am getting nodes, but no relationships (other than MENTIONS from document to an entity). llm_transformer = LLMGraphTransformer(llm=llm, node_properties=True, relationship_properties=True, strict_mode = False) and we define llm = ChatOllama(model="llama3.1", temperature=0, format="json") - I enev increase temperature to >0, but that does not help either ???
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
there are function calling issues with ollama models. Try the solution suggested here, I've not tested it though.. github.com/langchain-ai/langchainjs/issues/6051
@dineshmani1846
@dineshmani1846 12 күн бұрын
how can we do the Q&A using AWS neptune with Germlin.
@SridharKumarKannam
@SridharKumarKannam 11 күн бұрын
What is Germlin? Instead of Neo4j you connect to neptune. Bothe are graph DB's and should work the same way.
@dineshmani1846
@dineshmani1846 8 күн бұрын
@@SridharKumarKannam can i get any references or explanation for that
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
@@dineshmani1846 docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin-python.html
@krishnanmanushresth3400
@krishnanmanushresth3400 13 күн бұрын
Bro it is showing that context len horizontal len is not part of the syntax
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
Whats the exact error message? The variable name is "horizon_len". model = timesfm.TimesFm( context_len=512, horizon_len=128, input_patch_len=32, output_patch_len=128, num_layers=20, model_dims=1280, backend=timesfm_backend, )
@louortiz9395
@louortiz9395 13 күн бұрын
I can't seem to find information on how to use nougat. Is there a program I can download? I am not programming savvy but can follow directions. I have ebooks that I need formatted for AI use such as perplexity. Please help. Thank you.
@SridharKumarKannam
@SridharKumarKannam 11 күн бұрын
you can follow the instructions here - github.com/facebookresearch/nougat
@SurajPrasad-bf9qn
@SurajPrasad-bf9qn 15 күн бұрын
Thank you
@SridharKumarKannam
@SridharKumarKannam 14 күн бұрын
If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@icanride4long
@icanride4long 15 күн бұрын
Hi, great content. Easy to follow. Thanks for that. Are you able to compare and contrast LightRag vs GraphReader? GraphReader is similar in flow to GraphRag so I assume it has the same disadvantages. But would love to hear your thoughts since you've posted content on both solutions. Which would you recommend for production, today?
@SridharKumarKannam
@SridharKumarKannam 14 күн бұрын
thanks, I'll try but i'm occupied with quite a few things at the moment.
@薛帅-p7y
@薛帅-p7y 15 күн бұрын
it can be used in producation envs statbly?
@SridharKumarKannam
@SridharKumarKannam 14 күн бұрын
yes, the source code is available, just make sure there are no security issues related to API call to the servers...
@JENNYOPJOD
@JENNYOPJOD 15 күн бұрын
ImportError: cannot import name 'EmbeddingFunc' from 'lightrag.utils' (/usr/local/lib/python3.10/dist-packages/lightrag/utils/__init__.py) help me
@where_sunwhere_sun7221
@where_sunwhere_sun7221 16 күн бұрын
i do benefit form your video, now i know how to make image url using local images, thank you very much!
@SridharKumarKannam
@SridharKumarKannam 15 күн бұрын
If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@AbdulAziz-my3wt
@AbdulAziz-my3wt 16 күн бұрын
thanks, it is great, can we change chunk size?
@SridharKumarKannam
@SridharKumarKannam 15 күн бұрын
yes, you can when instantiating the RAG rag = LightRAG( working_dir=WORKING_DIR, chunk_token_size = N )
@piyushaaryan869
@piyushaaryan869 17 күн бұрын
Is this rag can be used for production ?
@SridharKumarKannam
@SridharKumarKannam 17 күн бұрын
yes, the source code is available, just make sure there are no security issues related to API call to the servers...
@kartikv776
@kartikv776 18 күн бұрын
Love these updates!
@SridharKumarKannam
@SridharKumarKannam 17 күн бұрын
If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@georgetorres1535
@georgetorres1535 18 күн бұрын
Is it possible to change your vector database? Or will there be problems?
@SridharKumarKannam
@SridharKumarKannam 17 күн бұрын
You can change the vector DB from nano-vectordb in the source code.
@yvescourtois
@yvescourtois 18 күн бұрын
Great content and very practical. Well done! Ran fine, but when I ran python -m graphrag.index --init --root . , all folders appeared except output (which I add manually). In the second step, artifacts and reports do not appear, but well the automatically generated docs that you describe.
@SridharKumarKannam
@SridharKumarKannam 17 күн бұрын
ya, there are a lot of issues with it as you can see from git repo issues, but it works. All the best.
@Gfghb-u7w
@Gfghb-u7w 18 күн бұрын
Fanatic explanation. Thank you!
@SridharKumarKannam
@SridharKumarKannam 18 күн бұрын
If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@pill
@pill 18 күн бұрын
I wonder how this would have to be changed in order to work over a codebase. I have a use case of natural language to Python and am trying traditional RAG, but I think a graph would help. Do you know of any other options?
@SridharKumarKannam
@SridharKumarKannam 18 күн бұрын
The codebase is tricky. A couple of suggestions. 1. Write docstrings for all the functions and important and complex code lines. 2. Use LLMs to create functions decryption. 3. Use the description and docstrings info to create embeddings and add them to the graph entity nodes. 4. Use such info in the retrieval. All the best :)
@SridharKumarKannam
@SridharKumarKannam 18 күн бұрын
If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@ramakrishnaparitala6777
@ramakrishnaparitala6777 18 күн бұрын
Bro...can you make a video on Road Map required to make AI agents or to be able to be the person who can understand all in this video? I request you to make one.
@SridharKumarKannam
@SridharKumarKannam 18 күн бұрын
If you are new to GenAI, I suggest (1) start with OpenAI, Ollama Python SDKs and API to chat with online and local LLMs. (2) Build simple LLM and RAG applications using UI tolls like LangFlow. (3) Move to agents only after you become comfortable doing 1 and 2. All the best...
@pavankalyanc6677
@pavankalyanc6677 19 күн бұрын
I have xml file and i want to generate data lineage graph.. is it possible. If yes suggest me some tips
@SridharKumarKannam
@SridharKumarKannam 18 күн бұрын
no this is not creating lineage graphs. You can use something like this... lineage.xml ---------- <lineage> <nodes> <node id="1" name="Data Source 1"/> <node id="2" name="Transformation 1"/> <node id="3" name="Data Source 2"/> <node id="4" name="Transformation 2"/> <node id="5" name="Final Output"/> </nodes> <edges> <edge source="1" target="2"/> <edge source="2" target="3"/> <edge source="3" target="4"/> <edge source="4" target="5"/> </edges> </lineage> ------------------ Python code: import xml.etree.ElementTree as ET import networkx as nx import matplotlib.pyplot as plt # Step 1: Parse the XML File def parse_xml(file): tree = ET.parse(file) root = tree.getroot() return root # Step 2: Extract nodes and edges from the XML def extract_nodes_edges(root): nodes = [] edges = [] for node in root.find('nodes').findall('node'): node_id = node.get('id') node_name = node.get('name') nodes.append((node_id, node_name)) for edge in root.find('edges').findall('edge'): source = edge.get('source') target = edge.get('target') edges.append((source, target)) return nodes, edges # Step 3: Create and visualize the lineage graph def create_lineage_graph(nodes, edges): G = nx.DiGraph() # Create a directed graph # Add nodes to the graph for node_id, node_name in nodes: G.add_node(node_id, label=node_name) # Add edges to the graph for source, target in edges: G.add_edge(source, target) # Step 4: Customize graph layout and labels pos = nx.spring_layout(G) labels = nx.get_node_attributes(G, 'label') # Draw the graph with labels nx.draw(G, pos, labels=labels, with_labels=True, node_color='lightblue', font_size=10, font_weight='bold') # Step 5: Show the graph plt.show() # Main function to execute the script if __name__ == "__main__": # Load and parse the XML file root = parse_xml('/Users/sridharkannam/Downloads/lineage.xml') # Extract nodes and edges nodes, edges = extract_nodes_edges(root) # Create and visualize the lineage graph create_lineage_graph(nodes, edges)
@pavankalyanc6677
@pavankalyanc6677 18 күн бұрын
@@SridharKumarKannam Thanks
@ajaykumarporeddiwar9226
@ajaykumarporeddiwar9226 20 күн бұрын
Great work once again! I’ve been following your videos closely, and I really appreciate how you drill down into the finer details. It’s clear that you put a lot of thought and effort into your content, and it’s really paying off. Keep up the amazing work-it’s been a pleasure learning from you!
@SridharKumarKannam
@SridharKumarKannam 19 күн бұрын
Thank you. If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@sam-uw3gf
@sam-uw3gf 20 күн бұрын
great video
@SridharKumarKannam
@SridharKumarKannam 19 күн бұрын
Thank you. If you found this content helpful, please consider liking, subscribing, and sharing it with others who might benefit. Your support is greatly appreciated :)
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@ZamirahmadSiddiqui
@ZamirahmadSiddiqui 20 күн бұрын
Great work. Thanks
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
Thank you. If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@AryanKumarBaghel-cp1jv
@AryanKumarBaghel-cp1jv 20 күн бұрын
Can we also establish connection between key elements ? Will it make the graph more informative?
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
thats a very good idea and yes you can that. Add the connections to the graph and prompt the agent to use connections for additional info or neighbourhood search...
@AryanKumarBaghel-cp1jv
@AryanKumarBaghel-cp1jv 20 күн бұрын
This is what i was looking for. Excellent video
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
Thank you. If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@foose212
@foose212 21 күн бұрын
do you do contract work? I'd like to implement an LLM in to my app to communicate with my database.
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
Sure, pls contact me at [email protected]
@atharimam8591
@atharimam8591 21 күн бұрын
OperationalError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/sqlalchemy/engine/base.py in __init__(self, engine, connection, _has_events, _allow_revalidate, _allow_autobegin) 145 try: --> 146 self._dbapi_connection = engine.raw_connection() 147 except dialect.loaded_dbapi.Error as err: 37 frames OperationalError: connection to server on socket "@localhost/.s.PGSQL.5432" failed: Connection refused Is the server running locally and accepting connections on that socket? The above exception was the direct cause of the following exception: OperationalError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/psycopg2/__init__.py in connect(dsn, connection_factory, cursor_factory, **kwargs) 120 121 dsn = _ext.make_dsn(dsn, **kwargs) --> 122 conn = _connect(dsn, connection_factory=connection_factory, **kwasync) 123 if cursor_factory is not None: 124 conn.cursor_factory = cursor_factory OperationalError: (psycopg2.OperationalError) connection to server on socket "@localhost/.s.PGSQL.5432" failed: Connection refused Is the server running locally and accepting connections on that socket? (Background on this error at: sqlalche.me/e/20/e3q8) when I'm trying to run this code tables = pd.read_sql( """ SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_SCHEMA='public' """, engine) tables
@dinushachathuranga7657
@dinushachathuranga7657 22 күн бұрын
Thanks a lot for the video, It is really helpful❤
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
Thank you. If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@atharimam8591
@atharimam8591 22 күн бұрын
Connection problem with postgresql
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
It worked for me. What the error. Did you check vanna github issues ...
@atharimam8591
@atharimam8591 21 күн бұрын
​@@SridharKumarKannam I have raise issue in details please check your github repository
@siliconberry
@siliconberry 22 күн бұрын
Good one. Thanks for sharing !
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
Thank you. If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@QuocNguyen-se7vi
@QuocNguyen-se7vi 22 күн бұрын
One more question, this graph agent is suitable for knowledge searching. Is it efficient to use to gather and structure knowledge about a specific subject from a document (or a mentioned entity that may present in many aspects/subjects along the document)?
@QuocNguyen-se7vi
@QuocNguyen-se7vi 22 күн бұрын
For example, I have a handbook of cosmetic science with various subjects or entities and I want to collect it's relevant information scattered along the document. After that, the agent might structure and arrange the collected information into well-structured document about the mentioned subjects/entities.
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
i would use traditional knowledge graph for that as there are many graph based algos which can run on top of traditional knowledge graphs. The new method also has some advantages, try both with a short text and see which one works better for your usecase.
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
for this one, you can use any agentic system including langgraph, you don't have to use this 4 layers graph structure.
@QuocNguyen-se7vi
@QuocNguyen-se7vi 22 күн бұрын
Hello, i wonder which video I should start to watch to learn making document to graph RAG like yours? Thank you!
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
1. kzbin.info/www/bejne/aXfMp5yDbLWeoKM 2. kzbin.info/www/bejne/d5fThKWHqbl7n9k
@QuocNguyen-se7vi
@QuocNguyen-se7vi 22 күн бұрын
thank you for you explanation
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
thank you. If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)
@Anonymous-bu9ch
@Anonymous-bu9ch 22 күн бұрын
Hi Sridhar, i want to implement my own chunking method here how to do it?
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
start with RAG and these strategies medium.com/@anuragmishra_27746/five-levels-of-chunking-strategies-in-rag-notes-from-gregs-video-7b735895694d
@Anonymous-bu9ch
@Anonymous-bu9ch 21 күн бұрын
@@SridharKumarKannam Thanks for the reply but I want to know where should i make changes in the microsoft rag, to implement my own semantic chunking. And its local and global methods are eating up a lot of tokens so i want to implement my own searching strategy of searching in nearby node and all the top hierarchical communities related to the given entity but this community concept is not very clear to me(i tried searching their github files also but still). So in case you have some resource or something it would be really helpful. Again thanks a lot
@SridharKumarKannam
@SridharKumarKannam 20 күн бұрын
@@Anonymous-bu9ch I don't have any additional resources other than my youtube. GraphRAG is quite complex as you said and its very slow and costly. I'm going to do a couple of videos on simplified GraphRAG in the next few days. I suggest you start with RAG and there are many advanced RAGs. Only if none of those work as expected, go for GraphRAG as changing the source code is quite complex and takes a lot of time.
@Anonymous-bu9ch
@Anonymous-bu9ch 19 күн бұрын
@@SridharKumarKannam Okay thanks !!
@jaaferklila1375
@jaaferklila1375 22 күн бұрын
Can we use a knowledge graph directly without passing with text, for exemple if i have a knowledge graph can i use it directly
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
no you can not. The GraphRAG query engine expects the graph to be in a specific format, for example, communities and summaries, etc. You need to rebuild the graph.
@kk008
@kk008 10 күн бұрын
@@SridharKumarKannam COuld u plz bit explain rebuilding process how to do it ? I have a KG with RDF (.ttl) format
@SridharKumarKannam
@SridharKumarKannam 6 күн бұрын
GraphRAG builds its own custom Knowledge graph with some new concepts like communities and summaries. We can't use RDF KGs GraphRAG unless you modify the source code substantially. I think, the best approach would be to build a RAG on top of your RDF KG. With all these RAG's the main thing, extracting the information relevant to the query and providing that to an LLM to create an answer.
@JenniferThompson-q2q
@JenniferThompson-q2q 23 күн бұрын
Emard Dale
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
?
@ujjwalgoel6359
@ujjwalgoel6359 23 күн бұрын
also in continuation to real world we cannot write the code for singe person every time what he brought or not, what will be the approach to that?
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
Once we define an approach, such things are computed in the backend in real time. We don't need to write separate queries for each user.
@ujjwalgoel6359
@ujjwalgoel6359 23 күн бұрын
one question what is we have a file not creating it manually do we have to upload that in neo4j database and rest will be same?
@SridharKumarKannam
@SridharKumarKannam 22 күн бұрын
Yes, you can ingest your data into a KG DB similar to how you ingest data into a sql db.
@SridharKumarKannam
@SridharKumarKannam 23 күн бұрын
If you found this content helpful, please consider sharing it with others who might benefit. Your support is greatly appreciated :)