update
This commit is contained in:
parent
2526507b49
commit
bafce742e5
11 changed files with 3080 additions and 38 deletions
19
doc/RAG.md
19
doc/RAG.md
|
|
@ -1,5 +1,13 @@
|
|||
# Dynamixs AI - Retrieval-augmented generation (RAG)
|
||||
|
||||
Retrieval Augmented Generation (RAG) is a term from the field of artificial intelligence and machine learning.
|
||||
|
||||
- **Retrieval** - refers to the ability to quickly and efficiently access stored information or retrieve it from a database or other storage system.
|
||||
- **Augmented** - refers to the idea of improving or expanding an existing function or capability by adding something new.
|
||||
- **Generation** - refers to the creation of new content or results based on available information.
|
||||
|
||||
In summary, Retrieval Augmented Generation (RAG) describes a method that uses artificial intelligence or machine learning to quickly and efficiently access stored information and use it to generate new content or results. This method can help improve the accuracy and relevance of generated content by drawing on a broader range of information.
|
||||
|
||||
The following section give a general overview how the Retrieval-augmented generation (RAG) is realized in Dynamixs AI.
|
||||
|
||||
## Storage
|
||||
|
|
@ -29,7 +37,7 @@ The vector is only used for similarity searching - it is a numerical representat
|
|||
|
||||
**Efficiency of Queries**
|
||||
|
||||
The chunk content also avoids a immediate access to the context with no need to make a separate query to the Imixs Workflow instance after the vector search to retrieve the original content. This would mean additional latency and complexity. `content_chunk` stores exactly the text section that corresponds to the vector.
|
||||
The chunk content also allows an immediate access to the context with no need to make a separate query to the Imixs Workflow instance after the vector search to retrieve the original content. This would mean additional latency and complexity. `content_chunk` stores exactly the text section that corresponds to the vector.
|
||||
|
||||
**The typical RAG workflow**
|
||||
|
||||
|
|
@ -199,3 +207,12 @@ A pure RAG solution reaches its limits here, but an intelligent hybrid system co
|
|||
|
||||
As the content_chunk can only have a small size below 1KB the RAG system includes a split process to split documents into smaller content_chunks.
|
||||
The split-process breaks down large business processes into logical chunks. Since the data is usually available in markup or can be prepared for the indexing process within the BPMN model, the split is made based on the structure in the markup. This guarantees a clean separation of text parts without the need to compute overlapping.
|
||||
|
||||
## Data Protection
|
||||
|
||||
Also the vector db may contain sensitive business data represented in content chunks. To protect also this kind of data the RAG system is tightly integrated into the security layer of Imixs-Workflow. In the retrieval phase each content_chunk returned by the vector db is immediately validated against the ACL of the corresponding process instance. This avoids the affect that unauthorized uses may receive sensitive data in a retrieval phase.
|
||||
As the
|
||||
|
||||
## Data Deletion
|
||||
|
||||
## BPMN
|
||||
|
|
|
|||
|
|
@ -56,6 +56,7 @@ services:
|
|||
- "8787:8787"
|
||||
volumes:
|
||||
- ./deployments:/opt/jboss/wildfly/standalone/deployments/
|
||||
- ./import_examples:/opt/jboss/import_examples/
|
||||
|
||||
# Mapping the host ip to the container
|
||||
# This setting is used for local testing only
|
||||
|
|
@ -118,43 +119,43 @@ services:
|
|||
#######################
|
||||
# Imixs Admin Client
|
||||
#######################
|
||||
# imixsadmin:
|
||||
# image: imixs/imixs-admin
|
||||
# ports:
|
||||
# - "8888:8080"
|
||||
imixsadmin:
|
||||
image: imixs/imixs-admin
|
||||
ports:
|
||||
- "8888:8080"
|
||||
|
||||
##################################
|
||||
# Keycloak SQL Server
|
||||
##################################
|
||||
dbkeycloak:
|
||||
image: postgres:15
|
||||
environment:
|
||||
POSTGRES_PASSWORD: adminadmin
|
||||
POSTGRES_USER: keycloak
|
||||
POSTGRES_DB: keycloak
|
||||
volumes:
|
||||
- dbkeycloak:/var/lib/postgresql/data
|
||||
# dbkeycloak:
|
||||
# image: postgres:15
|
||||
# environment:
|
||||
# POSTGRES_PASSWORD: adminadmin
|
||||
# POSTGRES_USER: keycloak
|
||||
# POSTGRES_DB: keycloak
|
||||
# volumes:
|
||||
# - dbkeycloak:/var/lib/postgresql/data
|
||||
|
||||
##################################
|
||||
# Keycloak Server
|
||||
##################################
|
||||
keycloak:
|
||||
#image: quay.io/keycloak/keycloak:23.0.5
|
||||
image: quay.io/keycloak/keycloak:26.2.4
|
||||
command:
|
||||
- start-dev
|
||||
environment:
|
||||
- KEYCLOAK_ADMIN=admin
|
||||
- KEYCLOAK_ADMIN_PASSWORD=adminadmin
|
||||
- KC_DB=postgres
|
||||
- KC_DB_URL=jdbc:postgresql://dbkeycloak:5432/keycloak
|
||||
- KC_DB_USER=keycloak
|
||||
- KC_DB_PASSWORD=adminadmin
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- ./configuration/keycloak/themes/:/opt/keycloak/themes/
|
||||
ports:
|
||||
- "8084:8080"
|
||||
# ##################################
|
||||
# # Keycloak Server
|
||||
# ##################################
|
||||
# keycloak:
|
||||
# #image: quay.io/keycloak/keycloak:23.0.5
|
||||
# image: quay.io/keycloak/keycloak:26.2.4
|
||||
# command:
|
||||
# - start-dev
|
||||
# environment:
|
||||
# - KEYCLOAK_ADMIN=admin
|
||||
# - KEYCLOAK_ADMIN_PASSWORD=adminadmin
|
||||
# - KC_DB=postgres
|
||||
# - KC_DB_URL=jdbc:postgresql://dbkeycloak:5432/keycloak
|
||||
# - KC_DB_USER=keycloak
|
||||
# - KC_DB_PASSWORD=adminadmin
|
||||
# volumes:
|
||||
# - /etc/localtime:/etc/localtime:ro
|
||||
# - ./configuration/keycloak/themes/:/opt/keycloak/themes/
|
||||
# ports:
|
||||
# - "8084:8080"
|
||||
|
||||
volumes:
|
||||
dbdata-hai:
|
||||
|
|
|
|||
101
docker/import_examples/products-100.csv
Normal file
101
docker/import_examples/products-100.csv
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
Index;Name;Description;Brand;Category;Price;Currency;Stock;EAN;Color;Size;Availability;Internal ID
|
||||
1;Compact Printer Air Advanced Digital;Situation organization these memory much off.;"Garner; Boyle and Flynn";Books & Stationery;265;USD;775;2091465262179;ForestGreen;Large;pre_order;56
|
||||
2;Tablet;Discussion loss politics free one thousand.;Mueller Inc;Shoes & Footwear;502;USD;81;5286196620740;Black;8x10 in;in_stock;29
|
||||
3;Smart Blender Cooker;No situation per.;"Lawson; Keller and Winters";Kitchen Appliances;227;USD;726;1282898648918;SlateGray;XS;in_stock;70
|
||||
4;Advanced Router Rechargeable;For force gas energy six laugh.;Gallagher and Sons;Kitchen Appliances;121;USD;896;3879177514583;PaleGreen;L;discontinued;31
|
||||
5;Portable Mouse Monitor Phone;Feeling back religious however author room scientist.;Irwin LLC;Kids' Clothing;1;USD;925;9055773261265;SeaShell;100x200 mm;discontinued;10
|
||||
6;Radio;Character prove growth contain serious customer.;"Benjamin; Nelson and Hancock";Skincare;426;USD;549;1150028980156;CornflowerBlue;30x40 cm;pre_order;60
|
||||
7;Ultra Projector Oven Thermostat Prime Advanced;Pattern possible look necessary indicate work nearly.;"Mccoy; Waters and Rose";Laptops & Computers;68;USD;871;5029747624534;Purple;S;discontinued;86
|
||||
8;Webcam Stove Grill;Deep area join carry age.;Morrow and Sons;Automotive;159;USD;584;9883725074294;MediumOrchid;8x10 in;pre_order;50
|
||||
9;Eco Radio;Know father for act let.;"Edwards; Odonnell and Conley";Skincare;454;USD;499;1773215338624;DimGray;Medium;pre_order;88
|
||||
10;Ultra Powerbank Brush Charger Max;Meeting add economic task outside.;"Brennan; Archer and Rosales";Fitness Equipment;845;USD;564;4877111475333;Silver;Extra Large;discontinued;88
|
||||
11;Wireless Dock;Whole bill sound whether will.;Russo-West;Health & Wellness;257;USD;168;9680811891595;Wheat;Extra Large;pre_order;30
|
||||
12;Fast Camera Router Fan Smart;Various above trouble itself crime form.;Vazquez and Sons;Cleaning Supplies;221;USD;672;8567222480604;MidnightBlue;Medium;pre_order;32
|
||||
13;Heater Radio;Ten do evidence billion perhaps read bank enter.;Delgado-Blackwell;Cycling;689;USD;156;5686660235911;Orange;L;pre_order;57
|
||||
14;Smart Trimmer Webcam Heater;Example available better.;Contreras PLC;Automotive;279;USD;818;1941032767914;Gainsboro;XXL;pre_order;66
|
||||
15;Webcam Dock Heater;State yet soon traditional your deal.;"Juarez; Powell and Travis";Cleaning Supplies;101;USD;149;1438856474369;Sienna;30x40 cm;pre_order;88
|
||||
16;Automatic Watch Lite Sense;As east entire positive source their.;"Reid; Chase and Ballard";Team Sports;316;USD;329;3500722785805;Tan;5x7 in;limited_stock;44
|
||||
17;Eco Iron Monitor Air;Color single indeed yard event popular food boy.;Barker-Murphy;Automotive;982;USD;47;7887280730963;OliveDrab;XL;out_of_stock;79
|
||||
18;Digital Tablet Router Printer Lite;Accept campaign every research test.;Vazquez-Smith;Health & Wellness;3;USD;732;4170125892616;LemonChiffon;10x10 cm;backorder;87
|
||||
19;Eco Freezer Powerbank Watch;Of price visit interesting enter three set.;"Pruitt; Higgins and Barnett";Cleaning Supplies;340;USD;618;6340907128242;Cyan;S;limited_stock;21
|
||||
20;Cooler Fan;Fall billion city share.;Bray LLC;Smartphones;529;USD;844;0267078141619;Bisque;XS;backorder;22
|
||||
21;Portable Camera Plus Air Ultra;Reality hair explain up bad.;Wang-Valenzuela;Women's Clothing;197;USD;163;0963840013930;Magenta;L;in_stock;96
|
||||
22;Wireless Powerbank 360 Advanced Ultra;Deal head decade age outside military culture.;Carney Ltd;Bedding & Bath;677;USD;418;3918763032312;Beige;M;out_of_stock;90
|
||||
23;Rechargeable Lamp Speakerphone Headphones;Effort own safe main walk quickly.;"Gallegos; Osborne and Carpenter";Skincare;664;USD;577;1824359393441;DarkBlue;L;pre_order;26
|
||||
24;Mini Scooter Microphone;Maybe around expect own whether pay.;"Douglas; Thornton and Soto";Grooming Tools;784;USD;510;9839666739792;DimGray;L;backorder;55
|
||||
25;Rechargeable Webcam Stove Grill;Movement you Mr decide history effect.;Horn-Pope;Health & Wellness;900;USD;623;6501687247749;PaleGreen;5x7 in;out_of_stock;47
|
||||
26;Mini Iron Drone Wireless Pro;From Congress low.;Khan-Parrish;Cycling;909;USD;797;9496081864722;CadetBlue;XXL;limited_stock;93
|
||||
27;Portable Freezer Phone Automatic Smart;Live fish audience piece his ago true.;Burton PLC;Automotive;350;USD;756;3486711401836;Snow;XL;pre_order;61
|
||||
28;Wireless Webcam Stove Grill;Pull at improve health also animal forward person.;Henry Group;Clothing & Apparel;858;USD;912;7097613907430;LightSalmon;50x70 cm;limited_stock;43
|
||||
29;Clock Brush;Other another must explain send somebody consider.;Larson-Spence;Furniture;985;USD;180;8301096575048;SaddleBrown;Extra Large;in_stock;40
|
||||
30;Keyboard Toaster Monitor;My head prove exist change.;Bonilla-Spears;Kids' Clothing;576;USD;988;6639325474032;DarkSlateGray;L;pre_order;40
|
||||
31;Silent Printer Fan Shaver;Region week yet weight.;Love LLC;Sports & Outdoors;102;USD;669;5564792899662;MediumSpringGreen;L;limited_stock;14
|
||||
32;Wireless Scooter Clean Mini;Green main imagine way suffer wall.;Terry-Oliver;Fragrances;283;USD;343;9921752342730;MintCream;S;pre_order;84
|
||||
33;Advanced Microphone Cooler Eco;Most other newspaper beyond real.;"Morales; Weaver and Fernandez";Smartphones;904;USD;532;7107438924403;LightCyan;Extra Large;limited_stock;86
|
||||
34;Automatic Brush Fast Eco;Record response relationship.;Newman Ltd;Kids' Clothing;407;USD;285;2327483415120;SeaGreen;8x10 in;out_of_stock;65
|
||||
35;Premium Bicycle Microphone;Congress how list third rise.;"Novak; Archer and Walton";Shoes & Footwear;480;USD;364;6209821998907;AliceBlue;Extra Large;discontinued;78
|
||||
36;Smart Phone Scooter Clean;Reality kid create thought window.;Marshall-Dougherty;Women's Clothing;635;USD;727;7883295446066;MediumVioletRed;10x10 cm;backorder;74
|
||||
37;Bicycle;Garden mother before ten different increase.;Hays-Cunningham;Smartphones;234;USD;394;7670612815694;White;10x10 cm;backorder;48
|
||||
38;Ultra Dock Trimmer Automatic Edge;Do customer stage act send.;Barnes-Glass;Kids' Clothing;640;USD;780;2837107354495;LightBlue;5x7 in;discontinued;96
|
||||
39;Wireless Tablet Router Printer Wireless Premium Air;North meeting short summer situation positive candidate.;Meyers-Hess;Sports & Outdoors;781;USD;947;8247903213713;BlanchedAlmond;XL;out_of_stock;69
|
||||
40;Clean Printer Advanced Premium Sense;Bag away always often join seat direction.;Williamson PLC;Haircare;913;USD;820;5234087663802;Moccasin;Small;discontinued;77
|
||||
41;Silent Dock Fast;Speak not hospital bit part.;"May; Hendrix and Robbins";Fishing & Hunting;100;USD;802;0938364240247;CadetBlue;M;limited_stock;12
|
||||
42;Ultra Speakerphone Oven Go Smart X;Value bill yeah tell phone.;"Zimmerman; Barr and Davis";Office Supplies;999;USD;853;0450118214736;MediumOrchid;12x18 in;pre_order;23
|
||||
43;Rechargeable Projector Pro;Bank everything ago girl.;"Levine; Martin and Mccann";Home Decor;935;USD;45;0655296358115;SlateBlue;XL;limited_stock;52
|
||||
44;Eco Vacuum;Bit name seat sea.;Werner PLC;Health & Wellness;259;USD;668;8611986118980;LightCoral;5x7 in;in_stock;45
|
||||
45;Smart Grill Tablet Fridge Go Smart Smart;By result ago born become.;"Huff; Cameron and Stephenson";Fitness Equipment;488;USD;966;9005775281402;Cornsilk;10x10 cm;out_of_stock;62
|
||||
46;Digital Stove Silent Pro;Suffer range between step mention peace prepare.;"Suarez; Riddle and Sanders";Health & Wellness;161;USD;349;5367012957872;OrangeRed;Extra Large;limited_stock;9
|
||||
47;Portable Powerbank X Air;Present court note medical bed red movie.;Hanson-Schultz;Camping & Hiking;599;USD;263;6854117854742;Moccasin;Large;discontinued;17
|
||||
48;Clock;Onto story what job require.;"Malone; Jacobson and Hudson";Team Sports;731;USD;664;1382809012286;FloralWhite;S;limited_stock;55
|
||||
49;Radio Treadmill;Through choose record prove happen.;Barron-Little;Office Supplies;511;USD;395;5461960384619;Violet;XL;discontinued;14
|
||||
50;Ultra Cooler Treadmill Touch Pro Ultra;Certainly simple light safe child PM candidate.;Bonilla-Oconnell;Fragrances;214;USD;574;3625664059934;NavajoWhite;XXL;pre_order;33
|
||||
51;Mini Fridge Camera;Little determine at huge month.;Decker and Sons;Fitness Equipment;777;USD;832;4894233116968;PaleGoldenRod;Extra Large;in_stock;16
|
||||
52;Rechargeable Tablet Plus Portable Mini;Expect question how sound.;Mooney-Gonzales;Fragrances;820;USD;535;8183922928019;Cyan;100x200 mm;in_stock;19
|
||||
53;Tablet;Many deal community public beyond safe anyone.;"Blake; Weiss and Montgomery";Beauty & Personal Care;408;USD;922;8183313115592;Chocolate;Medium;backorder;34
|
||||
54;Wireless Light Toaster Lite Touch Eco;Oil guy table industry hand which.;Singleton PLC;Bedding & Bath;791;USD;827;3057639268476;Fuchsia;50x70 cm;in_stock;64
|
||||
55;Scooter;Small approach possible choose according.;Rivas Group;Cameras & Accessories;370;USD;601;1974896712011;DarkOrchid;L;backorder;46
|
||||
56;Advanced Camera Heater Webcam X Ultra Prime;Audience bit past central film each.;Cervantes Ltd;Office Supplies;224;USD;372;0983367163970;Peru;50x70 cm;discontinued;56
|
||||
57;Ultra Keyboard Compact Eco;Bit responsibility cover him mean call civil.;Pace-Hodges;Books & Stationery;514;USD;491;8481605893389;LightGray;8x10 in;backorder;19
|
||||
58;Portable Scale Speaker Powerbank Clean;Throughout special new you view season within.;Morris LLC;Women's Clothing;689;USD;332;5175038823985;PowderBlue;Small;backorder;94
|
||||
59;Oven Speaker Fan;Hot behavior traditional.;Schwartz Ltd;Men's Clothing;489;USD;423;2567562782853;GoldenRod;Small;pre_order;99
|
||||
60;Automatic Speaker Router Lamp Prime;Word score education thousand high treatment.;"Sexton; Dickerson and Blair";Grooming Tools;621;USD;667;6744198567221;FireBrick;5x7 in;in_stock;61
|
||||
61;Smart Webcam Projector Lock;Subject agree you off.;Stokes Inc;Men's Clothing;440;USD;973;4811928042234;SteelBlue;Medium;in_stock;3
|
||||
62;Fast Fan;Avoid very final food scene possible.;Ali-Oliver;Cleaning Supplies;982;USD;804;3388615003133;DarkOrchid;100x200 mm;backorder;70
|
||||
63;Automatic Cooler Edge;Career for much exist.;"Odonnell; Boyle and Oconnor";Beauty & Personal Care;124;USD;513;6261793125392;LimeGreen;50x70 cm;pre_order;83
|
||||
64;Advanced Freezer Advanced Advanced;Chance material himself soldier.;Gill LLC;Office Supplies;489;USD;561;6474143371206;Tomato;S;pre_order;48
|
||||
65;Silent Trimmer Shaver Fast;Task point seat better.;Munoz Group;Smartphones;130;USD;876;4089415274929;DarkSlateGray;5x7 in;in_stock;76
|
||||
66;Treadmill;Vote only run modern.;"Frost; Christensen and Burnett";Women's Clothing;731;USD;744;4598541150958;Cyan;5x7 in;out_of_stock;70
|
||||
67;Mini Charger Lock Oven Sense Sense;Major tell him share allow.;"Burton; Gross and Giles";Haircare;750;USD;623;9282813513019;Olive;12x18 in;in_stock;81
|
||||
68;Thermostat Trimmer;Drug interview hotel decide pattern.;"Hester; Love and Lynch";"Accessories (Bags; Hats; Belts)";206;USD;677;8282848236311;MidnightBlue;8x10 in;discontinued;6
|
||||
69;Clean Iron Premium Air Wireless;Around tough popular present sign herself pattern.;"Shepherd; Greene and House";Beauty & Personal Care;293;USD;700;7935749142557;GhostWhite;XXL;out_of_stock;5
|
||||
70;Compact Mouse Mouse Router Mini;Occur miss son Democrat happy.;Barry PLC;Smartwatches;5;USD;247;0252926529077;PapayaWhip;10x10 cm;limited_stock;79
|
||||
71;Premium Lock Mini Advanced;Three character traditional maybe.;"Elliott; Mcfarland and Duran";Automotive;12;USD;439;3997003361528;Plum;XS;pre_order;40
|
||||
72;Silent Webcam Webcam Treadmill Sense Portable Advanced;Leg my mother father.;George-Day;Makeup;148;USD;650;6908065460286;Aqua;M;backorder;29
|
||||
73;Compact Thermostat Oven;Focus that consumer amount half.;Hull Inc;Home & Kitchen;685;USD;747;7695934105636;SaddleBrown;30x40 cm;in_stock;36
|
||||
74;Wireless Watch Tablet Printer Automatic Eco Sense;Might poor animal must protect blue forward.;Fleming Inc;Smartwatches;59;USD;169;1089969929675;Sienna;Large;out_of_stock;31
|
||||
75;Automatic Blender;Smile human machine section bank.;Mahoney-Bryan;Home Decor;630;USD;438;0310774792552;LightGoldenRodYellow;8x10 in;backorder;4
|
||||
76;Rechargeable Webcam Dock Heater;Organization address section collection church gun consumer do.;Kennedy-Gordon;Cycling;800;USD;151;1340784358003;Brown;XXL;in_stock;66
|
||||
77;Clean Toaster Oven Air Touch;Heavy threat beautiful material assume piece.;Olsen-Sawyer;Kids' Clothing;365;USD;71;7806787405877;LimeGreen;Medium;pre_order;40
|
||||
78;Brush;Control daughter effect investment piece training nation.;"Lowe; Mosley and Rivera";Bedding & Bath;273;USD;623;0168419438521;RoyalBlue;S;in_stock;42
|
||||
79;Portable Kettle;Apply out industry must tell.;Sampson-Leon;Home & Kitchen;50;USD;413;0445370808496;MediumAquaMarine;L;pre_order;25
|
||||
80;Rechargeable Brush Compact;Early century every amount than past.;Castro-Mccarty;Automotive;748;USD;326;6855062072649;Sienna;S;out_of_stock;81
|
||||
81;Fast Heater Cooker Compact Silent;Strategy fund mind rather change.;"Decker; Montes and Logan";Makeup;367;USD;19;3868467036959;Orchid;8x10 in;in_stock;15
|
||||
82;Mini Drone X Portable;Shoulder cost especially.;Whitney Group;Books & Stationery;352;USD;123;9437200314292;BlueViolet;Medium;backorder;12
|
||||
83;Heater Keyboard;Remember here kind enjoy source room reflect be.;Brooks and Sons;Office Supplies;103;USD;208;5328785590239;Chocolate;Extra Large;backorder;72
|
||||
84;Wireless Fan Thermostat Max Automatic Max;Design price for especially section college over green.;Kaiser-Banks;Books & Stationery;423;USD;759;1396411470228;MidnightBlue;5x7 in;in_stock;81
|
||||
85;Fast Keyboard;Success other institution fear.;Lewis Ltd;Camping & Hiking;998;USD;10;3163238295239;Cyan;50x70 cm;limited_stock;64
|
||||
86;Ultra Mixer Toaster Toaster Smart;Much guess have pattern southern true hair miss.;Galloway and Sons;Women's Clothing;342;USD;221;4862330962177;Tomato;S;pre_order;88
|
||||
87;Silent Speakerphone Scanner Monitor;Quality yet significant lawyer face field yet realize.;Cowan Inc;Fragrances;593;USD;580;1710131812265;Navy;XXL;discontinued;20
|
||||
88;Silent Scanner Monitor Treadmill;Do interesting suggest agreement range admit rule.;"Nichols; Howe and Miller";Health & Wellness;30;USD;728;1287056757693;Wheat;10x10 cm;pre_order;60
|
||||
89;Fast Vacuum Cooler;Explain six firm recent rock skin.;Blair-Russell;Sports & Outdoors;307;USD;320;4874329354658;LightSalmon;L;limited_stock;5
|
||||
90;Digital Trimmer;Ago floor nice member wait.;Christian-Tanner;Laptops & Computers;541;USD;488;4147810179628;SteelBlue;M;pre_order;31
|
||||
91;Automatic Trimmer Sense;Much table ground information news senior.;Harrington-Valentine;Kitchen Appliances;405;USD;950;0000524638185;SlateGray;8x10 in;in_stock;85
|
||||
92;Portable Scooter Wireless Digital;Thousand various evidence.;Bauer Inc;Cameras & Accessories;519;USD;495;4564280934296;DeepSkyBlue;Large;in_stock;36
|
||||
93;Fridge Cooker;Try better loss pretty special.;Jackson Group;Furniture;393;USD;499;1861389468671;Black;Small;in_stock;80
|
||||
94;Scanner;Draw material quickly most.;"Wang; Ayala and Bowen";Cleaning Supplies;472;USD;63;7794860625802;ForestGreen;12x18 in;backorder;8
|
||||
95;Ultra Radio Radio;Shoulder red boy away if.;Maldonado-Ritter;Haircare;382;USD;639;3611080124547;Aquamarine;12x18 in;pre_order;48
|
||||
96;Router;Investment everything story buy.;Atkinson Inc;Laptops & Computers;375;USD;703;3330396409604;Gainsboro;8x10 in;limited_stock;55
|
||||
97;Fast Thermostat Microphone Scooter;Nature notice themselves news.;Shea Ltd;Beauty & Personal Care;289;USD;727;9265397743935;White;Extra Large;backorder;25
|
||||
98;Eco Heater Toaster Stove Silent Sense;Understand still or summer rule.;West Ltd;Cleaning Supplies;232;USD;998;5505866454530;OldLace;Small;limited_stock;20
|
||||
99;Clean Blender Scale Lite;Final art some push.;"Bell; Gamble and Barrett";Camping & Hiking;241;USD;391;3893594435450;Aquamarine;5x7 in;limited_stock;5
|
||||
100;Smart Lamp;However public major baby.;"Hebert; Hughes and Trujillo";Bedding & Bath;71;USD;518;8264263605712;Brown;Medium;limited_stock;3
|
||||
|
1001
docker/import_examples/products-1000.csv
Normal file
1001
docker/import_examples/products-1000.csv
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -77,7 +77,7 @@
|
|||
</error-page>
|
||||
|
||||
|
||||
<!-- Login Modul - Form-Login
|
||||
<!-- Login Modul - Form-Login -->
|
||||
<login-config>
|
||||
<auth-method>FORM</auth-method>
|
||||
<realm-name>imixsrealm</realm-name>
|
||||
|
|
@ -86,13 +86,14 @@
|
|||
<form-error-page>/loginerror.jsf</form-error-page>
|
||||
</form-login-config>
|
||||
</login-config>
|
||||
-->
|
||||
|
||||
<!-- Wildfly OIDC Login Module
|
||||
Note: WEB-INF/oidc.yaml file is mandatory!
|
||||
-->
|
||||
|
||||
<login-config>
|
||||
<auth-method>OIDC</auth-method>
|
||||
</login-config>
|
||||
-->
|
||||
|
||||
|
||||
<!-- Security Roles -->
|
||||
|
|
|
|||
|
|
@ -0,0 +1,317 @@
|
|||
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:i="http://java.sun.com/jsf/composite/imixs" xmlns:c="http://java.sun.com/jsp/jstl/core"
|
||||
xmlns:pt="http://xmlns.jcp.org/jsf/passthrough" xmlns:fn="http://xmlns.jcp.org/jsp/jstl/functions"
|
||||
xmlns:marty="http://java.sun.com/jsf/composite/marty" template="/layout/template.xhtml">
|
||||
|
||||
<ui:define name="content">
|
||||
<f:view>
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
/*<![CDATA[*/
|
||||
$(document).ready(function () {
|
||||
//$('.imixsdatatable').layoutImixsTable();
|
||||
});
|
||||
|
||||
|
||||
// This method refreshs the layout
|
||||
function updateOptions(data) {
|
||||
if (data.status === 'success') {
|
||||
$('[id$=Optionlist]').imixsLayout();
|
||||
|
||||
/* var id='#'+data.source.id;
|
||||
if (id.indexOf("input")>-1) {
|
||||
$(id).focus();
|
||||
} */
|
||||
}
|
||||
}
|
||||
|
||||
/*]]>*/
|
||||
</script>
|
||||
|
||||
|
||||
<h:form id="import_form_id">
|
||||
<!-- ########## Error ########## -->
|
||||
<ui:include src="/error_message.xhtml" />
|
||||
|
||||
<div class="imixs-form">
|
||||
<div class="imixs-header">
|
||||
<h1>Document Importer</h1>
|
||||
</div>
|
||||
<div class="imixs-body">
|
||||
<div class="imixs-tabs">
|
||||
<ul>
|
||||
<li><a href="#tab-1">Timer Setting</a></li>
|
||||
<li><a href="#tab-2">Data Sources</a></li>
|
||||
</ul>
|
||||
|
||||
<!-- ### Timer ### -->
|
||||
<div id="tab-1">
|
||||
|
||||
<div class="ui-state-highlight ui-corner-all"
|
||||
style="margin-bottom: 10px; padding: .5em;">
|
||||
<p><span class="typcn typcn-lightbulb"></span> Define a crontab to schedule the
|
||||
import processor.</p>
|
||||
</div>
|
||||
<ui:include src="sub_scheduler_control.xhtml">
|
||||
<ui:param name="schedulerController" value="#{documentImportController}" />
|
||||
</ui:include>
|
||||
</div>
|
||||
|
||||
<!-- ### SMTP ### -->
|
||||
<div id="tab-2">
|
||||
|
||||
<div class="ui-state-highlight ui-corner-all"
|
||||
style="margin-bottom: 10px; padding: .5em;">
|
||||
<p><span class="typcn typcn-lightbulb"></span> Define a destination IMAP server and
|
||||
assign mail addresses to specific workflow groups.</p>
|
||||
</div>
|
||||
<div class="imixs-form-panel">
|
||||
|
||||
<!-- ### Sources ### -->
|
||||
<h:panelGroup layout="block" id="imapOptionlist"
|
||||
binding="#{imapOptionlistContainer}">
|
||||
<f:ajax onevent="updateOptions">
|
||||
<table class="imixsdatatable" style="width: 100%;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 10px;text-align: center;">Pos</th>
|
||||
<th style="width: 100px;text-align: center;">Type</th>
|
||||
<th style="">Workflowgroup</th>
|
||||
<th style="">Modelversion</th>
|
||||
<th style="">Task</th>
|
||||
<th style="">Event</th>
|
||||
<th style="width: 110px;">
|
||||
<!-- delete -->
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<ui:repeat var="source" value="#{documentImportController.sources}">
|
||||
|
||||
<tr>
|
||||
<!-- pos -->
|
||||
<td style=" text-align: center;">
|
||||
<h:commandLink
|
||||
actionListener="#{documentImportController.selectSource(source.item['index'])}">
|
||||
#
|
||||
<h:outputText value="#{source.item['index']}" />
|
||||
<f:ajax render="#{imapOptionlistContainer.clientId}"
|
||||
onevent="updateOptions" />
|
||||
</h:commandLink>
|
||||
</td>
|
||||
|
||||
<!-- type -->
|
||||
<td style="text-align: center;">
|
||||
<h:outputText value="#{source.item['type']}" />
|
||||
</td>
|
||||
<!-- Workflowgroup -->
|
||||
<td>
|
||||
<h:outputText value="#{source.item['workflowgroup']}" />
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<h:outputText value="#{source.item['workflowmodel']}" />
|
||||
</td>
|
||||
<td>
|
||||
<h:outputText value="#{source.item['task']}" />
|
||||
</td>
|
||||
<td>
|
||||
<h:outputText value="#{source.item['event']}" />
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<h:commandLink
|
||||
actionListener="#{documentImportController.moveSourceDown(source.item['index'])}">
|
||||
<span
|
||||
class="typcn typcn-arrow-down-thick imixs-state-info"></span>
|
||||
<f:ajax render="#{imapOptionlistContainer.clientId}"
|
||||
onevent="updateOptions" />
|
||||
</h:commandLink>
|
||||
<h:commandLink
|
||||
actionListener="#{documentImportController.moveSourceUp(source.item['index'])}">
|
||||
<span
|
||||
class="typcn typcn-arrow-up-thick imixs-state-info"></span>
|
||||
<f:ajax render="#{imapOptionlistContainer.clientId}"
|
||||
onevent="updateOptions" />
|
||||
</h:commandLink>
|
||||
|
||||
<h:commandLink
|
||||
actionListener="#{documentImportController.removeSource(source.item['index'])}">
|
||||
<span
|
||||
class="typcn typcn-trash imixs-state-info"></span>
|
||||
<f:ajax render="#{imapOptionlistContainer.clientId}"
|
||||
onevent="updateOptions" />
|
||||
</h:commandLink>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
</ui:repeat>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
<!-- add button -->
|
||||
<h:commandButton value="#{message.add}"
|
||||
actionListener="#{documentImportController.addSource()}">
|
||||
<f:ajax render="#{imapOptionlistContainer.clientId}"
|
||||
onevent="updateOptions" />
|
||||
</h:commandButton>
|
||||
|
||||
|
||||
|
||||
<!-- ### Subform for selected source ### -->
|
||||
|
||||
<h:panelGroup layout="block"
|
||||
rendered="#{! empty documentImportController.source}"
|
||||
styleClass="imixs-form-panel">
|
||||
<h3>Order ID #
|
||||
<h:outputText
|
||||
value="#{documentImportController.source.item['index']}" />
|
||||
</h3>
|
||||
<div class="imixs-form-section-3">
|
||||
<dl>
|
||||
<dt>Type</dt>
|
||||
<dd>
|
||||
<h:selectOneRadio
|
||||
value="#{documentImportController.source.item['type']}">
|
||||
<f:selectItem itemLabel="IMAP" itemValue="IMAP" />
|
||||
<f:selectItem itemLabel="FTP" itemValue="FTP" />
|
||||
<f:selectItem itemLabel="CSV" itemValue="CSV" />
|
||||
</h:selectOneRadio>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Workflowgroup</dt>
|
||||
<dd>
|
||||
<h:selectOneMenu
|
||||
value="#{documentImportController.source.item['workflowgroup']}">
|
||||
<f:selectItem itemLabel=" - " itemValue="" />
|
||||
<c:forEach items="#{modelController.workflowGroups}"
|
||||
var="group">
|
||||
<f:selectItem itemLabel="#{group}"
|
||||
itemValue="#{group}" />
|
||||
</c:forEach>
|
||||
</h:selectOneMenu>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="imixs-form-section-3">
|
||||
|
||||
<dl>
|
||||
<dt>Workflowmodel</dt>
|
||||
<dd>
|
||||
<h:inputText
|
||||
value="#{documentImportController.source.item['workflowmodel']}" />
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>Task ID</dt>
|
||||
<dd>
|
||||
<h:inputText
|
||||
value="#{documentImportController.source.item['task']}" />
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>Event ID</dt>
|
||||
<dd>
|
||||
<h:inputText
|
||||
value="#{documentImportController.source.item['event']}" />
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<hr />
|
||||
<!-- IMAP -->
|
||||
<div class="imixs-form-section-3">
|
||||
<dl>
|
||||
<dt>Server : Port</dt>
|
||||
<dd>
|
||||
<h:inputText style="width:80%;"
|
||||
value="#{documentImportController.source.item['server']}">
|
||||
</h:inputText> : <h:inputText style="width:15%;"
|
||||
value="#{documentImportController.source.item['port']}">
|
||||
</h:inputText>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>User</dt>
|
||||
<dd>
|
||||
<h:inputText required="false"
|
||||
value="#{documentImportController.source.item['user']}">
|
||||
</h:inputText>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Password</dt>
|
||||
<dd>
|
||||
<h:inputSecret required="false" redisplay="true"
|
||||
value="#{documentImportController.source.item['password']}">
|
||||
</h:inputSecret>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="imixs-form-section">
|
||||
<dl>
|
||||
<dt>Selector</dt>
|
||||
<dd>
|
||||
<h:inputText required="false"
|
||||
value="#{documentImportController.source.item['selector']}">
|
||||
</h:inputText>
|
||||
<p class="small">A selector can be an optional regular
|
||||
expression to be used to select a subset of data</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>Options</dt>
|
||||
<dd>
|
||||
<h:inputTextarea required="false"
|
||||
style="height: 5em; width: 100%;"
|
||||
value="#{documentImportController.source.item['options']}">
|
||||
</h:inputTextarea>
|
||||
<p class="small">You can apply custom properties here.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</h:panelGroup> <!-- end of source subform -->
|
||||
</f:ajax>
|
||||
</h:panelGroup>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="imixs-footer">
|
||||
<h:outputLabel value="#{message.modified}: " />
|
||||
<h:outputText value="#{documentImportController.configuration.item['$modified']}">
|
||||
<f:convertDateTime timeZone="#{message.timeZone}" type="both"
|
||||
pattern="#{message.dateTimePattern}" />
|
||||
</h:outputText>
|
||||
<br />
|
||||
<h:commandButton actionListener="#{documentImportController.saveConfiguration()}"
|
||||
action="/pages/admin/document_import" value="#{message.save}">
|
||||
</h:commandButton>
|
||||
<h:commandButton value="#{message.close}" action="notes" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</h:form>
|
||||
</f:view>
|
||||
</ui:define>
|
||||
|
||||
|
||||
|
||||
</ui:composition>
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
<f:subview xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://xmlns.jcp.org/jsf/core"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
|
||||
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core" xmlns:pt="http://xmlns.jcp.org/jsf/passthrough"
|
||||
xmlns:fn="http://xmlns.jcp.org/jsp/jstl/functions">
|
||||
|
||||
<script type="text/javascript">
|
||||
/*<![CDATA[*/
|
||||
|
||||
function updateStatustPanel(data) {
|
||||
//initUserInput($('#userselector_id'));
|
||||
if (data.status === 'success') {
|
||||
$('[id$=status_panel]').imixsLayout();
|
||||
}
|
||||
}
|
||||
|
||||
/*]]>*/
|
||||
</script>
|
||||
|
||||
|
||||
<!-- **** General info ***** -->
|
||||
<div class="imixs-form-panel">
|
||||
<h:inputTextarea required="false" converter="org.imixs.VectorConverter" style="height: 8em; width: 100%;"
|
||||
value="#{schedulerController.configuration.itemList['_scheduler_definition']}">
|
||||
</h:inputTextarea>
|
||||
</div>
|
||||
|
||||
<!-- **** Timer Status ***** -->
|
||||
<h:panelGroup layout="block" class="imixs-form-panel" id="status_panel">
|
||||
<h:panelGroup layout="block" id="timer_details" class="imixs-form-section">
|
||||
|
||||
<h2>
|
||||
<h:outputText id="timer_status"
|
||||
value="Status ⇢ #{schedulerController.configuration.item['_scheduler_status']}" />
|
||||
|
||||
<h:panelGroup rendered="#{! empty schedulerController.configuration.item['_scheduler_errormessage']}"
|
||||
class="small" style="color:red">
|
||||
<br />Error: #{schedulerController.configuration.item['_scheduler_errormessage']}
|
||||
</h:panelGroup>
|
||||
</h2>
|
||||
|
||||
<h:panelGrid columns="2">
|
||||
|
||||
<h:panelGroup layout="block" style="width:100px;">
|
||||
<h:outputLabel value="ID: " />
|
||||
</h:panelGroup>
|
||||
<h:panelGroup>
|
||||
<h:outputText value="#{schedulerController.configuration.item['$UniqueID']}" />
|
||||
</h:panelGroup>
|
||||
<h:outputLabel value="Schedule: " />
|
||||
<h:outputText value="#{schedulerController.configuration.item['Schedule']}" />
|
||||
|
||||
<h:outputLabel value="Next Timeout: " />
|
||||
<h:panelGroup>
|
||||
<h:outputText value="#{schedulerController.configuration.item['nextTimeout']}"
|
||||
rendered="#{! empty schedulerController.configuration.item['nextTimeout']}">
|
||||
<f:convertDateTime timeZone="#{message.timeZone}" type="both"
|
||||
pattern="#{message.dateTimePattern}" />
|
||||
</h:outputText>
|
||||
<h:outputText value=" " />
|
||||
</h:panelGroup>
|
||||
|
||||
<h:outputLabel value="TimeRemaining: " />
|
||||
<h:outputText
|
||||
value="#{schedulerController.millisToShortDHMS(schedulerController.configuration.item['timeRemaining'])}" />
|
||||
</h:panelGrid>
|
||||
<h:outputLabel value="Last Run: " />
|
||||
<h:panelGroup layout="block" class="ui-state-highlight ui-corner-all"
|
||||
style="padding: .5em;background: #f5f5f5;padding: 10px;height: 260px;overflow-y: auto;">
|
||||
<ui:fragment rendered="#{! empty schedulerController.configuration.item['_scheduler_logmessage']}">
|
||||
<pre style="font-family: 'Courier New', Courier, monospace;color: #111;line-height: 1.0rem;"> <ui:repeat var="logentry" value="#{schedulerController.configuration.itemList['_scheduler_logmessage']}">
|
||||
<h:outputText escape="false" value="#{logentry}" /><br />
|
||||
</ui:repeat></pre>
|
||||
</ui:fragment>
|
||||
<ui:fragment rendered="#{empty schedulerController.configuration.item['_scheduler_logmessage']}">
|
||||
No Data.
|
||||
</ui:fragment>
|
||||
|
||||
</h:panelGroup>
|
||||
|
||||
</h:panelGroup>
|
||||
|
||||
|
||||
<!-- Timer Actions -->
|
||||
<h:commandButton value="#{message.refresh}" actionListener="#{schedulerController.refresh}">
|
||||
<f:ajax render="status_panel" onevent="updateStatustPanel" />
|
||||
</h:commandButton>
|
||||
|
||||
|
||||
<h:commandButton actionListener="#{schedulerController.startScheduler}" value="start">
|
||||
</h:commandButton>
|
||||
<h:commandButton actionListener="#{schedulerController.stopScheduler}" value="stop">
|
||||
</h:commandButton>
|
||||
<h:commandButton actionListener="#{schedulerController.restartScheduler}" value="restart">
|
||||
</h:commandButton>
|
||||
|
||||
|
||||
|
||||
</h:panelGroup>
|
||||
|
||||
</f:subview>
|
||||
|
|
@ -347,7 +347,7 @@ public class ClusterService {
|
|||
}
|
||||
|
||||
try {
|
||||
// Generiere UUID und aktuelle Zeit
|
||||
// Generiere UUID
|
||||
UUID chunk_id = UUID.randomUUID();
|
||||
|
||||
// CqlVector verwenden
|
||||
|
|
|
|||
2
pom.xml
2
pom.xml
|
|
@ -62,7 +62,7 @@
|
|||
<jakarta.version>10.0.0</jakarta.version>
|
||||
<microprofile.version>6.0</microprofile.version>
|
||||
<org.imixs.workflow.version>6.2.2-SNAPSHOT</org.imixs.workflow.version>
|
||||
<org.imixs.archive.version>3.1.0</org.imixs.archive.version>
|
||||
<org.imixs.archive.version>3.1.2-SNAPSHOT</org.imixs.archive.version>
|
||||
<org.imixs.office.version>5.1.3-SNAPSHOT</org.imixs.office.version>
|
||||
<org.imixs.marty.version>5.0.3</org.imixs.marty.version>
|
||||
<org.imixs.adapter.version>3.0.1</org.imixs.adapter.version>
|
||||
|
|
|
|||
1504
workflow/product-de-1.0.0.bpmn
Normal file
1504
workflow/product-de-1.0.0.bpmn
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue