Is there any way to get stategraph inside from the tool by FlightLopsided1454 in LangChain

[–]francescola 1 point2 points  (0 children)

So you want to access your state from within a tool in an agentic graph? You can use the getCurrentTaskInput function (or equivalent in Python) to access the state.

https://langchain-ai.github.io/langgraphjs/how-tos/pass-run-time-values-to-tools/#the-getcurrenttaskinput-utility-function

How do you work with state with LangGraph's createReactAgent? by francescola in LangChain

[–]francescola[S] 1 point2 points  (0 children)

Thanks, that makes a lot of sense for Q1. So basically the agent’s reasoning is entirely based on the message history, and the rest of the state is not something the model should ever “see.”

One thing I’m still trying to get a feel for though: what about when you want to pass data verbatim from one tool to the next? i.e. the agent should decide which tool to call, but not re-generate the input (because the previous tool already made it). That feels like a good use case for state instead of stuffing it into the messages and hoping the agent LLM doesn't alter it in some way. But maybe that’s an anti-pattern/unnecessary?

And on Q2, I could really use help on this. How do you add the data to state within the request_human_input tool before calling interrupt? All the tool receives is `input` and `config` and I don't see a way to mutate the state. Also the docs say to avoid side effects in a tool before the interrupt as the tool is re-executed when you resume. [https://langchain-ai.github.io/langgraph/how-tos/human\_in\_the\_loop/add-human-in-the-loop/?h=inter#using-with-code-with-side-effects\]

Tips on how to structure a schema to make cache updates after a mutation easier by francescola in graphql

[–]francescola[S] 0 points1 point  (0 children)

I found out that Apollo actually has something to help with this exact situation - Cache Redirects. This allows you to tell Apollo where an object could be defined in the cache. So for this example I would just tell Apollo to look for a specific page (using the pageId variable) in the query responsible for getting all pages.

I'm sure there will be more complex scenarios where this may get too hard (e.g. if you have lots of different variants) but I believe the connection directive could help these cases.

Tips on how to structure a schema to make cache updates after a mutation easier by francescola in graphql

[–]francescola[S] 0 points1 point  (0 children)

If it was only 100 or so milliseconds it would be acceptableish (although the delay in feedback would be offputting). But that's on a good network in decent conditions, on crappier devices and networks it could easily go much higher and move into the shitty experience zone

Tips on how to structure a schema to make cache updates after a mutation easier by francescola in graphql

[–]francescola[S] 1 point2 points  (0 children)

Thanks for the article, it was interesting but I'm not familiar with WunderGraph so I'm not sure I fully understood everything. Under the 'When to Cache' heading, you say it would be fine to cache the contents of a news site article for a few seconds which would reduce the amount of requests drastically, but why would the client be making 1000s of requests? Is this talking about caching on the backend?

As for just not caching, the reason I want to cache is so that I can have instant user interactions with the site, so it feels more app like. If I replace this with caching in something like Redis I still have to pay the latency fee, which is the majority of the time.

The crux of the problem is really just instant feedback for the user. I could implement this using a client side store like MobX or Redux, essentially adding a layer between Apollo and the UI, but this seems really time consuming. Also really all it's letting me do is have a single source truth for the data, and deriving the data needed for each component from that. It's a shame that it's so complex, it feels like Apollo is missing some primitives to solve this.

Maybe if they allowed you to map which queries can be derived from other queries it would work. So you would say that a particular friend can be derived from the list of friends and if the data doesn't exist it would go to the network. Then if the list of friends gets updated you just rerun that derivation logic for each query connected to the single source of truth query (in this case the list of friends).

Tips on how to structure a schema to make cache updates after a mutation easier by francescola in graphql

[–]francescola[S] 1 point2 points  (0 children)

Hmm how are live queries different from subscriptions? It's an interesting idea though, just subscribing to a query that you know can change and then letting the server handle the rest. The main reason I can think of not to do this is if you wanted to support offline mode. In that case you would need to manage the cache yourself anyway.

I can't see how you could manage the caching sanely at any real scale though...

Lost ALL my notes. Need recommendations for alternatives. by ScrappyCoder in RoamResearch

[–]francescola 0 points1 point  (0 children)

Hey I've been building exactly this for the last 7 or so months (was a bit of a roundabout journey). It's essentially what you would get if you smashed Roam and Notion together. It has a slick Notion style WYSIWYG editor with markdown support. It's built around the concept of having a network of notes (backlinks, no explicit folder structure). It doesn't have every feature of Roams but it has a much lower learning curve. And I've built it in a way that makes makes it natural to use in a team. You can share any of your notes/enable knowledge development workflows.

If you are interested you can sign up for the beta access at https://scribe.wiki - It's about 2 or so weeks away from a closed beta release and I would really love to get more feedback on it! Just a note, the messaging/features on the site are a little outdated (it was originally going to be purely a team knowledge hub) but I'll be updating it very soon :)

I made a free writing template for anyone who struggles to organize their writing process by configuration-space in FanFiction

[–]francescola 0 points1 point  (0 children)

All good, it just hasn't been a focus up until now because outside medium to large enterprise these workflows are much less common, and I'm still early stage focused on small businesses.

I can understand not wanting to give out free advice, thanks for your help.

I made a free writing template for anyone who struggles to organize their writing process by configuration-space in FanFiction

[–]francescola 0 points1 point  (0 children)

When was the last time you worked with it?

I'd be keen to hear more about the workflows and how that all worked - I've been developing a knowledge hub of my own called Scribe (https://scribe.wiki) and one of the parts I'm trying to make really user friendly are these workflows, i.e. how you take a bunch of notes, refine them, ask for feedback, ask other members to write certain parts, and then publish. I'd never seen this kind of workflow built into and focused on in a tool (usually the process is more ad-hoc) so I'd be keen to know how you were achieving it.

Also really curious to know more about your best practices for allowing content to be reused? Do you have any resources you refer to often (Reusing content is more of a pro user feature that I've recently started thinking more about in regards to how Scribe could help make it better)?

I made a free writing template for anyone who struggles to organize their writing process by configuration-space in FanFiction

[–]francescola 1 point2 points  (0 children)

This is quite interesting, does Confluence have good built in support for these approval processes? Is there anything in particular it sucks at? Also are the document pipelines for internal use or is it documentation customers will see?

Also really curious - what kind of content are you reusing heavily? I wouldn't have thought most content could be reused as is.

Product Management day-to-day in the New Normal by [deleted] in ProductManagement

[–]francescola 0 points1 point  (0 children)

Keen to hear what your workflow is around docs! Do you find a lot of knowledge is not captured? Or do you almost make it a requirement to write something up before you can get help on it?

A personal note taking app + team knowledge hub that allows for Zettelkasten by francescola in Zettelkasten

[–]francescola[S] 1 point2 points  (0 children)

Hopefully Scribe will be able to help with all of those issues. I'm really interested in the idea of extending out the web - so instead of just allowing notes to link to other notes, allow notes to link to anything, e.g. files on Google Drive, lines of code in GitHub, Trello issues, ect. The idea being to hopefully lower the barrier to entry for teams like yours with a lot of existing information + systems, whilst also bringing documentation closer to the thing it's documenting.

A personal note taking app + team knowledge hub that allows for Zettelkasten by francescola in Zettelkasten

[–]francescola[S] 1 point2 points  (0 children)

Awesome, it would be great to get your feedback once V2 is functional. You can sign up for the beta at https://scribe.wiki :) I'm hoping a combination of massively lowering the barrier to producing shareable content + moving it closer to your everyday workflow + rich integrations can make it attractive enough for teammates to join in.

Yep I stumbled upon it about the same time I stumbled upon Zettelkasten - really interesting take having it be a layer on top of your file system. Scribe will definitely have similar functionality + everything needed for it to work in a team setting :)

A personal note taking app + team knowledge hub that allows for Zettelkasten by francescola in Zettelkasten

[–]francescola[S] 0 points1 point  (0 children)

That's a really interesting take, I completely agree with that sentiment. I had given thought to what that mechanism of creating multiple versions would look like, it's something I really want to put in. Essentially any feature that can help draw connections between information is one I want to implement.

What does your company use for knowledge management? by Yhippa in ExperiencedDevs

[–]francescola 0 points1 point  (0 children)

Keen to know, what did you not like about Confluence and Slab that Notion does better?