flygithub 189007e44d
Fix: PUT method does not work as expected with Invoke component (#5081)
### What problem does this PR solve?
Invoke component can be used to call third party services.
Tried GET/POST/PUT from web UI, and found PUT request failed like this:
(test api: api/v1/chats/<assistant_id>)
 ```
{"code":100,"data":null,"message":"AttributeError("'NoneType' object has
no attribute 'get'")"}
```

Root cause: Invoke PUT with a 'data=args' parameter, which is a form-encoded data, however the default content type setting of request header is application/json. The test api could not deal with such case.

Fix: use the 'json' parameter of reqeusts.put(), same as Invoke POST. Do not use the 'data' parameter.
Another way is to use 'data=json.dumps(args)'.

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
2025-02-18 19:34:22 +08:00
..
2025-01-13 18:19:01 +08:00
2025-01-21 20:52:28 +08:00
2024-12-27 11:38:33 +08:00
2024-12-10 10:19:50 +08:00
2024-12-10 10:19:50 +08:00
2025-01-21 20:52:28 +08:00

English | 简体中文

Graph

Introduction

Graph is a mathematical concept which is composed of nodes and edges. It is used to compose a complex work flow or agent. And this graph is beyond the DAG that we can use circles to describe our agent or work flow. Under this folder, we propose a test tool ./test/client.py which can test the DSLs such as json files in folder ./test/dsl_examples. Please use this client at the same folder you start RAGFlow. If it's run by Docker, please go into the container before running the client. Otherwise, correct configurations in service_conf.yaml is essential.

PYTHONPATH=path/to/ragflow python graph/test/client.py -h
usage: client.py [-h] -s DSL -t TENANT_ID -m

options:
  -h, --help            show this help message and exit
  -s DSL, --dsl DSL     input dsl
  -t TENANT_ID, --tenant_id TENANT_ID
                        Tenant ID
  -m, --stream          Stream output

How to gain a TENANT_ID in command line?

💡 We plan to display it here in the near future.

How to set 'kb_ids' for component 'Retrieval' in DSL?