上传备份

master
王兵 6 months ago
parent 115982fe1e
commit ff367358ec

@ -21,8 +21,14 @@ public class Agent_Example {
.chatMemory(MessageWindowChatMemory.withMaxMessages(10))
.build();
String chat = assistant.chat("你是谁");
System.out.println(chat);
{
String chat = assistant.chat("你好,我是小李。一个学生");
System.out.println(chat);
}
{
String chat = assistant.chat("你知道我的职业是什么吗?");
System.out.println(chat);
}
}
/**

@ -31,6 +31,12 @@ public class Helper {
.modelName("qwen2.5:7b")
.build();
private static OpenAiChatModel gemmaModel = OpenAiChatModel.builder()
.baseUrl("http://36.138.207.178:11434/v1")
.apiKey("1")
.modelName("gemma3:4b")
.build();
public static OpenAiStreamingChatModel getStreamChatModel() {
return openAiStreamingChatModel;
}
@ -43,6 +49,10 @@ public class Helper {
return toolChatModel;
}
public static OpenAiChatModel getGemmaModel() {
return gemmaModel;
}
public static Document getDocument() {
return Document.from("人往往在做梦的时候会打呼噜");
}

@ -0,0 +1,38 @@
package xyz.wbsite.ai;
import dev.langchain4j.data.message.ImageContent;
import dev.langchain4j.data.message.TextContent;
import dev.langchain4j.data.message.UserMessage;
import dev.langchain4j.memory.chat.MessageWindowChatMemory;
import dev.langchain4j.model.chat.response.ChatResponse;
import dev.langchain4j.service.AiServices;
/**
*
*/
public class Image_Chait_Example {
public static void main(String[] args) {
Assistant assistant = AiServices.builder(Assistant.class)
.chatLanguageModel(Helper.getGemmaModel())
.chatMemory(MessageWindowChatMemory.withMaxMessages(10))
.build();
UserMessage userMessage = UserMessage.userMessage(
TextContent.from("What do you see?"),
ImageContent.from("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",
MimeType.MIME_PNG.getValue())
);
String chat = assistant.chat(userMessage);
System.out.println(chat);
}
/**
*
*/
interface Assistant {
String chat(UserMessage userMessage);
}
}

@ -0,0 +1,41 @@
package xyz.wbsite.ai;
import cn.hutool.core.util.StrUtil;
import dev.langchain4j.data.message.AiMessage;
import dev.langchain4j.data.message.UserMessage;
import dev.langchain4j.memory.ChatMemory;
import dev.langchain4j.memory.chat.ChatMemoryProvider;
import dev.langchain4j.memory.chat.MessageWindowChatMemory;
import dev.langchain4j.service.AiServices;
import dev.langchain4j.service.SystemMessage;
/**
*
*/
public class Memory_Chat_Example {
public static void main(String[] args) {
MessageWindowChatMemory messageWindowChatMemory = MessageWindowChatMemory.withMaxMessages(5);
messageWindowChatMemory.add(UserMessage.from("你好,我是小李。一个学生"));
messageWindowChatMemory.add(AiMessage.from("你好!很高兴认识你,小李。作为学生,你一定有很多学习上的问题或者生活中的挑战吧?如果你有任何问题或需要帮助的地方,随时告诉我哦!无论是作业、课程内容还是其他方面的问题,我都很乐意为你提供帮助。\uD83D\uDE0A"));
messageWindowChatMemory.add(UserMessage.from("你知道我的职业是什么吗?"));
messageWindowChatMemory.add(AiMessage.from("哦,你已经告诉我你是学生了呀!是的,我知道你的职业呢。有什么问题我可以帮你的吗?"));
Assistant assistant = AiServices.builder(Assistant.class)
.chatLanguageModel(Helper.getChatModel())
.chatMemory(messageWindowChatMemory)
.build();
{
String chat = assistant.chat("你知道我叫什么名字吗?");
System.out.println(chat);
}
}
/**
*
*/
interface Assistant {
String chat(String userMessage);
}
}

@ -0,0 +1,270 @@
package xyz.wbsite.ai;
public enum MimeType {
APPLICATION_OCTET_STREAM("application", "octet-stream", "application/octet-stream"),
MIME_3GP("video", "3gpp", "video/3gpp"),
MIME_AI("application", "postscript", "application/postscript"),
MIME_AIF("audio", "x-aiff", "audio/x-aiff"),
MIME_AIFC("audio", "x-aiff", "audio/x-aiff"),
MIME_AIFF("audio", "x-aiff", "audio/x-aiff"),
MIME_ALL("*", "*", "*/*"),
MIME_APK("application", "vnd.android.package-archive", "application/vnd.android.package-archive"),
MIME_ASC("text", "plain", "text/plain"),
MIME_ATOM("application", "atom+xml", "application/atom+xml"),
MIME_AU("audio", "basic", "audio/basic"),
MIME_AVI("video", "x-msvideo", "video/x-msvideo"),
MIME_BCPIO("application", "x-bcpio", "application/x-bcpio"),
MIME_BIN("application", "octet-stream", "application/octet-stream"),
MIME_BMP("image", "bmp", "image/bmp"),
MIME_BZ2("application", "x-bzip2", "application/x-bzip2"),
MIME_CDF("application", "x-netcdf", "application/x-netcdf"),
MIME_CGM("image", "cgm", "image/cgm"),
MIME_CHRT("application", "x-kchart", "application/x-kchart"),
MIME_CLASS("application", "octet-stream", "application/octet-stream"),
MIME_CPIO("application", "x-cpio", "application/x-cpio"),
MIME_CPT("application", "mac-compactpro", "application/mac-compactpro"),
MIME_CSH("application", "x-csh", "application/x-csh"),
MIME_CSS("text", "css", "text/css"),
MIME_DCR("application", "x-director", "application/x-director"),
MIME_DIF("video", "x-dv", "video/x-dv"),
MIME_DIR("application", "x-director", "application/x-director"),
MIME_DJV("image", "vnd.djvu", "image/vnd.djvu"),
MIME_DJVU("image", "vnd.djvu", "image/vnd.djvu"),
MIME_DLL("application", "octet-stream", "application/octet-stream"),
MIME_DMG("application", "octet-stream", "application/octet-stream"),
MIME_DMS("application", "octet-stream", "application/octet-stream"),
MIME_DOC("application", "msword", "application/msword"),
MIME_DOCX("application", "vnd.openxmlformats-officedocument.wordprocessingml.document", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"),
MIME_DOTX("application", "vnd.openxmlformats-officedocument.wordprocessingml.template", "application/vnd.openxmlformats-officedocument.wordprocessingml.template"),
MIME_DTD("application", "xml-dtd", "application/xml-dtd"),
MIME_DV("video", "x-dv", "video/x-dv"),
MIME_DVI("application", "x-dvi", "application/x-dvi"),
MIME_DXR("application", "x-director", "application/x-director"),
MIME_EPS("application", "postscript", "application/postscript"),
MIME_ETX("text", "x-setext", "text/x-setext"),
MIME_EXE("application", "octet-stream", "application/octet-stream"),
MIME_EZ("application", "andrew-inset", "application/andrew-inset"),
MIME_FLV("video", "x-flv", "video/x-flv"),
MIME_GIF("image", "gif", "image/gif"),
MIME_GRAM("application", "srgs", "application/srgs"),
MIME_GRXML("application", "srgs+xml", "application/srgs+xml"),
MIME_GTAR("application", "x-gtar", "application/x-gtar"),
MIME_GZ("application", "x-gzip", "application/x-gzip"),
MIME_HDF("application", "x-hdf", "application/x-hdf"),
MIME_HQX("application", "mac-binhex40", "application/mac-binhex40"),
MIME_HTM("text", "html", "text/html"),
MIME_HTML("text", "html", "text/html"),
MIME_ICE("x-conference", "x-cooltalk", "x-conference/x-cooltalk"),
MIME_ICO("image", "x-icon", "image/x-icon"),
MIME_ICS("text", "calendar", "text/calendar"),
MIME_IEF("image", "ief", "image/ief"),
MIME_IFB("text", "calendar", "text/calendar"),
MIME_IGES("model", "iges", "model/iges"),
MIME_IGS("model", "iges", "model/iges"),
MIME_JAD("text", "vnd.sun.j2me.app-descriptor", "text/vnd.sun.j2me.app-descriptor"),
MIME_JAR("application", "java-archive", "application/java-archive"),
MIME_JNLP("application", "x-java-jnlp-file", "application/x-java-jnlp-file"),
MIME_JP2("image", "jp2", "image/jp2"),
MIME_JPE("image", "jpeg", "image/jpeg"),
MIME_JPEG("image", "jpeg", "image/jpeg"),
MIME_JPG("image", "jpeg", "image/jpeg"),
MIME_JS("application", "javascript", "application/javascript"),
MIME_JSON("application", "json", "application/json"),
MIME_KAR("audio", "midi", "audio/midi"),
MIME_KIL("application", "x-killustrator", "application/x-killustrator"),
MIME_KSP("application", "x-kspread", "application/x-kspread"),
MIME_LATEX("application", "x-latex", "application/x-latex"),
MIME_LHA("application", "octet-stream", "application/octet-stream"),
MIME_LZH("application", "octet-stream", "application/octet-stream"),
MIME_M3U("audio", "x-mpegurl", "audio/x-mpegurl"),
MIME_M4A("audio", "mp4a-latm", "audio/mp4a-latm"),
MIME_M4P("audio", "mp4a-latm", "audio/mp4a-latm"),
MIME_M4U("video", "vnd.mpegurl", "video/vnd.mpegurl"),
MIME_M4V("video", "x-m4v", "video/x-m4v"),
MIME_MAC("image", "x-macpaint", "image/x-macpaint"),
MIME_MAN("application", "x-troff-man", "application/x-troff-man"),
MIME_MATHML("application", "mathml+xml", "application/mathml+xml"),
MIME_ME("application", "x-troff-me", "application/x-troff-me"),
MIME_MESH("model", "mesh", "model/mesh"),
MIME_MID("audio", "midi", "audio/midi"),
MIME_MIDI("audio", "midi", "audio/midi"),
MIME_MIF("application", "vnd.mif", "application/vnd.mif"),
MIME_MOV("video", "quicktime", "video/quicktime"),
MIME_MOVIE("video", "x-sgi-movie", "video/x-sgi-movie"),
MIME_MP2("audio", "mpeg", "audio/mpeg"),
MIME_MP3("audio", "mpeg", "audio/mpeg"),
MIME_MP4("video", "mp4", "video/mp4"),
MIME_MPE("video", "mpeg", "video/mpeg"),
MIME_MPEG("video", "mpeg", "video/mpeg"),
MIME_MPG("video", "mpeg", "video/mpeg"),
MIME_MPGA("audio", "mpeg", "audio/mpeg"),
MIME_MS("application", "x-troff-ms", "application/x-troff-ms"),
MIME_MSH("model", "mesh", "model/mesh"),
MIME_MXU("video", "vnd.mpegurl", "video/vnd.mpegurl"),
MIME_NC("application", "x-netcdf", "application/x-netcdf"),
MIME_ODA("application", "oda", "application/oda"),
MIME_ODB("application", "vnd.oasis.opendocument.database", "application/vnd.oasis.opendocument.database"),
MIME_ODC("application", "vnd.oasis.opendocument.chart", "application/vnd.oasis.opendocument.chart"),
MIME_ODF("application", "vnd.oasis.opendocument.formula", "application/vnd.oasis.opendocument.formula"),
MIME_ODG("application", "vnd.oasis.opendocument.graphics", "application/vnd.oasis.opendocument.graphics"),
MIME_ODI("application", "vnd.oasis.opendocument.image", "application/vnd.oasis.opendocument.image"),
MIME_ODM("application", "vnd.oasis.opendocument.text-master", "application/vnd.oasis.opendocument.text-master"),
MIME_ODP("application", "vnd.oasis.opendocument.presentation", "application/vnd.oasis.opendocument.presentation"),
MIME_ODS("application", "vnd.oasis.opendocument.spreadsheet", "application/vnd.oasis.opendocument.spreadsheet"),
MIME_ODT("application", "vnd.oasis.opendocument.text", "application/vnd.oasis.opendocument.text"),
MIME_OGG("audio", "ogg", "audio/ogg"),
MIME_OGV("video", "ogv", "video/ogv"),
MIME_OTG("application", "vnd.oasis.opendocument.graphics-template", "application/vnd.oasis.opendocument.graphics-template"),
MIME_OTH("application", "vnd.oasis.opendocument.text-web", "application/vnd.oasis.opendocument.text-web"),
MIME_OTP("application", "vnd.oasis.opendocument.presentation-template", "application/vnd.oasis.opendocument.presentation-template"),
MIME_OTS("application", "vnd.oasis.opendocument.spreadsheet-template", "application/vnd.oasis.opendocument.spreadsheet-template"),
MIME_OTT("application", "vnd.oasis.opendocument.text-template", "application/vnd.oasis.opendocument.text-template"),
MIME_PBM("image", "x-portable-bitmap", "image/x-portable-bitmap"),
MIME_PCT("image", "pict", "image/pict"),
MIME_PDB("chemical", "x-pdb", "chemical/x-pdb"),
MIME_PDF("application", "pdf", "application/pdf"),
MIME_PGM("image", "x-portable-graymap", "image/x-portable-graymap"),
MIME_PGN("application", "x-chess-pgn", "application/x-chess-pgn"),
MIME_PIC("image", "pict", "image/pict"),
MIME_PICT("image", "pict", "image/pict"),
MIME_PNG("image", "png", "image/png"),
MIME_PNM("image", "x-portable-anymap", "image/x-portable-anymap"),
MIME_PNT("image", "x-macpaint", "image/x-macpaint"),
MIME_PNTG("image", "x-macpaint", "image/x-macpaint"),
MIME_POTX("application", "vnd.openxmlformats-officedocument.presentationml.template", "application/vnd.openxmlformats-officedocument.presentationml.template"),
MIME_PPM("image", "x-portable-pixmap", "image/x-portable-pixmap"),
MIME_PPSX("application", "vnd.openxmlformats-officedocument.presentationml.slideshow", "application/vnd.openxmlformats-officedocument.presentationml.slideshow"),
MIME_PPT("application", "vnd.ms-powerpoint", "application/vnd.ms-powerpoint"),
MIME_PPTX("application", "vnd.openxmlformats-officedocument.presentationml.presentation", "application/vnd.openxmlformats-officedocument.presentationml.presentation"),
MIME_PS("application", "postscript", "application/postscript"),
MIME_QT("video", "quicktime", "video/quicktime"),
MIME_QTI("image", "x-quicktime", "image/x-quicktime"),
MIME_QTIF("image", "x-quicktime", "image/x-quicktime"),
MIME_RA("audio", "x-pn-realaudio", "audio/x-pn-realaudio"),
MIME_RAM("audio", "x-pn-realaudio", "audio/x-pn-realaudio"),
MIME_RAS("image", "x-cmu-raster", "image/x-cmu-raster"),
MIME_RDF("application", "rdf+xml", "application/rdf+xml"),
MIME_RGB("image", "x-rgb", "image/x-rgb"),
MIME_RM("application", "vnd.rn-realmedia", "application/vnd.rn-realmedia"),
MIME_ROFF("application", "x-troff", "application/x-troff"),
MIME_RPM("application", "x-rpm", "application/x-rpm"),
MIME_RTF("text", "rtf", "text/rtf"),
MIME_RTX("text", "richtext", "text/richtext"),
MIME_SGM("text", "sgml", "text/sgml"),
MIME_SGML("text", "sgml", "text/sgml"),
MIME_SH("application", "x-sh", "application/x-sh"),
MIME_SHAR("application", "x-shar", "application/x-shar"),
MIME_SILO("model", "mesh", "model/mesh"),
MIME_SIS("application", "vnd.symbian.install", "application/vnd.symbian.install"),
MIME_SIT("application", "x-stuffit", "application/x-stuffit"),
MIME_SKD("application", "x-koan", "application/x-koan"),
MIME_SKM("application", "x-koan", "application/x-koan"),
MIME_SKP("application", "x-koan", "application/x-koan"),
MIME_SKT("application", "x-koan", "application/x-koan"),
MIME_SLDX("application", "vnd.openxmlformats-officedocument.presentationml.slide", "application/vnd.openxmlformats-officedocument.presentationml.slide"),
MIME_SMI("application", "smil", "application/smil"),
MIME_SMIL("application", "smil", "application/smil"),
MIME_SND("audio", "basic", "audio/basic"),
MIME_SO("application", "octet-stream", "application/octet-stream"),
MIME_SPL("application", "x-futuresplash", "application/x-futuresplash"),
MIME_SRC("application", "x-wais-source", "application/x-wais-source"),
MIME_STC("application", "vnd.sun.xml.calc.template", "application/vnd.sun.xml.calc.template"),
MIME_STD("application", "vnd.sun.xml.draw.template", "application/vnd.sun.xml.draw.template"),
MIME_STI("application", "vnd.sun.xml.impress.template", "application/vnd.sun.xml.impress.template"),
MIME_STW("application", "vnd.sun.xml.writer.template", "application/vnd.sun.xml.writer.template"),
MIME_SV4CPIO("application", "x-sv4cpio", "application/x-sv4cpio"),
MIME_SV4CRC("application", "x-sv4crc", "application/x-sv4crc"),
MIME_SVG("image", "svg+xml", "image/svg+xml"),
MIME_SWF("application", "x-shockwave-flash", "application/x-shockwave-flash"),
MIME_SXC("application", "vnd.sun.xml.calc", "application/vnd.sun.xml.calc"),
MIME_SXD("application", "vnd.sun.xml.draw", "application/vnd.sun.xml.draw"),
MIME_SXG("application", "vnd.sun.xml.writer.global", "application/vnd.sun.xml.writer.global"),
MIME_SXI("application", "vnd.sun.xml.impress", "application/vnd.sun.xml.impress"),
MIME_SXM("application", "vnd.sun.xml.math", "application/vnd.sun.xml.math"),
MIME_SXW("application", "vnd.sun.xml.writer", "application/vnd.sun.xml.writer"),
MIME_T("application", "x-troff", "application/x-troff"),
MIME_TAR("application", "x-tar", "application/x-tar"),
MIME_TCL("application", "x-tcl", "application/x-tcl"),
MIME_TEX("application", "x-tex", "application/x-tex"),
MIME_TEXI("application", "x-texinfo", "application/x-texinfo"),
MIME_TEXINFO("application", "x-texinfo", "application/x-texinfo"),
MIME_TIF("image", "tiff", "image/tiff"),
MIME_TIFF("image", "tiff", "image/tiff"),
MIME_TORRENT("application", "x-bittorrent", "application/x-bittorrent"),
MIME_TR("application", "x-troff", "application/x-troff"),
MIME_TSV("text", "tab-separated-values", "text/tab-separated-values"),
MIME_TXT("text", "plain", "text/plain"),
MIME_USTAR("application", "x-ustar", "application/x-ustar"),
MIME_VCD("application", "x-cdlink", "application/x-cdlink"),
MIME_VRML("model", "vrml", "model/vrml"),
MIME_VXML("application", "voicexml+xml", "application/voicexml+xml"),
MIME_WAV("audio", "x-wav", "audio/x-wav"),
MIME_WAX("audio", "x-ms-wax", "audio/x-ms-wax"),
MIME_WBMP("image", "vnd.wap.wbmp", "image/vnd.wap.wbmp"),
MIME_WBXML("application", "vnd.wap.wbxml", "application/vnd.wap.wbxml"),
MIME_WEBM("video", "webm", "video/webm"),
MIME_WEBP("image", "webp", "image/webp"),
MIME_WM("video", "x-ms-wm", "video/x-ms-wm"),
MIME_WMA("audio", "x-ms-wma", "audio/x-ms-wma"),
MIME_WML("text", "vnd.wap.wml", "text/vnd.wap.wml"),
MIME_WMLC("application", "vnd.wap.wmlc", "application/vnd.wap.wmlc"),
MIME_WMLS("text", "vnd.wap.wmlscript", "text/vnd.wap.wmlscript"),
MIME_WMLSC("application", "vnd.wap.wmlscriptc", "application/vnd.wap.wmlscriptc"),
MIME_WMV("video", "x-ms-wmv", "video/x-ms-wmv"),
MIME_WMX("video", "x-ms-wmx", "video/x-ms-wmx"),
MIME_WRL("model", "vrml", "model/vrml"),
MIME_WVX("video", "x-ms-wvx", "video/x-ms-wvx"),
MIME_XBM("image", "x-xbitmap", "image/x-xbitmap"),
MIME_XHT("application", "xhtml+xml", "application/xhtml+xml"),
MIME_XHTML("application", "xhtml+xml", "application/xhtml+xml"),
MIME_XLAM("application", "vnd.ms-excel.addin.macroEnabled.12", "application/vnd.ms-excel.addin.macroEnabled.12"),
MIME_XLS("application", "vnd.ms-excel", "application/vnd.ms-excel"),
MIME_XLSB("application", "vnd.ms-excel.sheet.binary.macroEnabled.12", "application/vnd.ms-excel.sheet.binary.macroEnabled.12"),
MIME_XLSX("application", "vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"),
MIME_XLTX("application", "vnd.openxmlformats-officedocument.spreadsheetml.template", "application/vnd.openxmlformats-officedocument.spreadsheetml.template"),
MIME_XML("application", "xml", "application/xml"),
MIME_XPM("image", "x-xpixmap", "image/x-xpixmap"),
MIME_XSL("application", "xml", "application/xml"),
MIME_XSLT("application", "xslt+xml", "application/xslt+xml"),
MIME_XUL("application", "vnd.mozilla.xul+xml", "application/vnd.mozilla.xul+xml"),
MIME_XWD("image", "x-xwindowdump", "image/x-xwindowdump"),
MIME_XYZ("chemical", "x-xyz", "chemical/x-xyz"),
MIME_ZIP("application", "zip", "application/zip"),
;
private String type;
private String subType;
private String value;
MimeType(String type, String subType, String value) {
this.type = type;
this.subType = subType;
this.value = value;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getSubType() {
return subType;
}
public void setSubType(String subType) {
this.subType = subType;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

@ -0,0 +1,41 @@
package xyz.wbsite.ai;
import cn.hutool.core.thread.ThreadUtil;
import dev.langchain4j.model.ModelProvider;
import dev.langchain4j.model.chat.response.ChatResponse;
import dev.langchain4j.model.chat.response.StreamingChatResponseHandler;
import dev.langchain4j.model.openai.OpenAiStreamingChatModel;
/**
*
*/
public class StreamChat_Stop_Example {
public static void main(String[] args) {
String question = "假如树上有10只鸟10分钟前飞走了2只5分钟前又飞回了1只刚刚又来了3只那现在树上有几只鸟?";
ThreadUtil.execAsync(new Runnable() {
@Override
public void run() {
OpenAiStreamingChatModel streamChatModel = Helper.getStreamChatModel();
Helper.getStreamChatModel().chat(question, new StreamingChatResponseHandler() {
@Override
public void onPartialResponse(String s) {
System.out.print(s);
}
@Override
public void onCompleteResponse(ChatResponse chatResponse) {
System.out.println("onComplete");
}
@Override
public void onError(Throwable throwable) {
System.err.println(throwable.getMessage());
}
});
}
});
}
}
Loading…
Cancel
Save

Powered by TurnKey Linux.