Search in sources :

Example 1 with Profile

use of com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile in project java-sdk by watson-developer-cloud.

the class PersonalityInsightsIT method getProfileWithTextAsCSVNoHeaders.

/**
 * Gets the profile with text as a CSV string without headers.
 *
 * @throws Exception the exception
 */
@Test
public void getProfileWithTextAsCSVNoHeaders() throws Exception {
    File file = new File(RESOURCE + "en.txt");
    String englishText = getStringFromInputStream(new FileInputStream(file));
    ProfileOptions options = new ProfileOptions.Builder().text(englishText).build();
    String profileString = service.getProfileAsCSV(options, false).execute();
    Assert.assertNotNull(profileString);
    Assert.assertTrue(profileString.split("\n").length == 1);
}
Also used : ProfileOptions(com.ibm.watson.developer_cloud.personality_insights.v3.model.ProfileOptions) File(java.io.File) FileInputStream(java.io.FileInputStream) Test(org.junit.Test) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest)

Example 2 with Profile

use of com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile in project java-sdk by watson-developer-cloud.

the class PersonalityInsightsIT method getProfileWithContentItems.

/**
 * Gets the profile from a list of content items.
 *
 * @throws Exception the exception
 */
@Test
public void getProfileWithContentItems() throws Exception {
    final Content content = loadFixture(RESOURCE + "v3-contentItems.json", Content.class);
    ProfileOptions options = new ProfileOptions.Builder().content(content).consumptionPreferences(true).rawScores(true).build();
    Profile profile = service.profile(options).execute();
    assertProfile(profile);
}
Also used : ProfileOptions(com.ibm.watson.developer_cloud.personality_insights.v3.model.ProfileOptions) Content(com.ibm.watson.developer_cloud.personality_insights.v3.model.Content) Profile(com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile) Test(org.junit.Test) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest)

Example 3 with Profile

use of com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile in project java-sdk by watson-developer-cloud.

the class PersonalityInsightsIT method testReadme.

/**
 * Test example in Readme.
 */
@Test
public void testReadme() {
    // PersonalityInsights service = new PersonalityInsights("2016-10-19");
    // service.setUsernameAndPassword("<username>", "<password>");
    // Demo content from Moby Dick by Hermann Melville (Chapter 1)
    String text = "Call me Ishmael. Some years ago-never mind how long precisely-having " + "little or no money in my purse, and nothing particular to interest me on shore, " + "I thought I would sail about a little and see the watery part of the world. " + "It is a way I have of driving off the spleen and regulating the circulation. " + "Whenever I find myself growing grim about the mouth; whenever it is a damp, " + "drizzly November in my soul; whenever I find myself involuntarily pausing before " + "coffin warehouses, and bringing up the rear of every funeral I meet; and especially " + "whenever my hypos get such an upper hand of me, that it requires a strong moral " + "principle to prevent me from deliberately stepping into the street, and methodically " + "knocking people's hats off-then, I account it high time to get to sea as soon as I can. " + "This is my substitute for pistol and ball. With a philosophical flourish Cato throws himself " + "upon his sword; I quietly take to the ship. There is nothing surprising in this. " + "If they but knew it, almost all men in their degree, some time or other, cherish " + "very nearly the same feelings towards the ocean with me. There now is your insular " + "city of the Manhattoes, belted round by wharves as Indian isles by coral reefs-commerce surrounds " + "it with her surf. Right and left, the streets take you waterward.";
    ProfileOptions options = new ProfileOptions.Builder().text(text).build();
    Profile profile = service.profile(options).execute();
    System.out.println(profile);
}
Also used : ProfileOptions(com.ibm.watson.developer_cloud.personality_insights.v3.model.ProfileOptions) Profile(com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile) Test(org.junit.Test) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest)

Example 4 with Profile

use of com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile in project java-sdk by watson-developer-cloud.

the class PersonalityInsights method profile.

/**
 * Generates a personality profile based on input text.
 *
 * Derives personality insights for up to 20 MB of input content written by an author, though the service requires
 * much less text to produce an accurate profile; for more information, see [Providing sufficient
 * input](https://console.bluemix.net/docs/services/personality-insights/input.html#sufficient). Accepts input in
 * Arabic, English, Japanese, Korean, or Spanish and produces output in one of eleven languages. Provide plain text,
 * HTML, or JSON content, and receive results in JSON or CSV format.
 *
 * @param profileOptions the {@link ProfileOptions} containing the options for the call
 * @return a {@link ServiceCall} with a response type of {@link Profile}
 */
public ServiceCall<Profile> profile(ProfileOptions profileOptions) {
    Validator.notNull(profileOptions, "profileOptions cannot be null");
    String[] pathSegments = { "v3/profile" };
    RequestBuilder builder = RequestBuilder.post(RequestBuilder.constructHttpUrl(getEndPoint(), pathSegments));
    builder.query(VERSION, versionDate);
    builder.header("Content-Type", profileOptions.contentType());
    if (profileOptions.contentLanguage() != null) {
        builder.header("Content-Language", profileOptions.contentLanguage());
    }
    if (profileOptions.acceptLanguage() != null) {
        builder.header("Accept-Language", profileOptions.acceptLanguage());
    }
    if (profileOptions.rawScores() != null) {
        builder.query("raw_scores", String.valueOf(profileOptions.rawScores()));
    }
    if (profileOptions.consumptionPreferences() != null) {
        builder.query("consumption_preferences", String.valueOf(profileOptions.consumptionPreferences()));
    }
    if (profileOptions.contentType().equalsIgnoreCase(ProfileOptions.ContentType.APPLICATION_JSON)) {
        builder.bodyJson(GsonSingleton.getGson().toJsonTree(profileOptions.content()).getAsJsonObject());
    } else {
        builder.bodyContent(profileOptions.body(), profileOptions.contentType());
    }
    return createServiceCall(builder.build(), ResponseConverterUtils.getObject(Profile.class));
}
Also used : RequestBuilder(com.ibm.watson.developer_cloud.http.RequestBuilder) Profile(com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile)

Example 5 with Profile

use of com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile in project java-sdk by watson-developer-cloud.

the class PersonalityInsightsExample method main.

public static void main(String[] args) {
    PersonalityInsights service = new PersonalityInsights("2016-10-19");
    service.setUsernameAndPassword("<username>", "<password>");
    String text = "Call me Ishmael. Some years ago-never mind how long " + "precisely-having little or no money in my purse, and nothing " + "particular to interest me on shore, I thought I would sail about " + "a little and see the watery part of the world. It is a way " + "I have of driving off the spleen and regulating the circulation. " + "Whenever I find myself growing grim about the mouth; whenever it " + "is a damp, drizzly November in my soul; whenever I find myself " + "involuntarily pausing before coffin warehouses, and bringing up " + "the rear of every funeral I meet; and especially whenever my " + "hypos get such an upper hand of me, that it requires a strong " + "moral principle to prevent me from deliberately stepping into " + "the street, and methodically knocking people's hats off-then, " + "I account it high time to get to sea as soon as I can.";
    ProfileOptions options = new ProfileOptions.Builder().text(text).build();
    Profile profile = service.profile(options).execute();
    System.out.println(profile);
}
Also used : ProfileOptions(com.ibm.watson.developer_cloud.personality_insights.v3.model.ProfileOptions) PersonalityInsights(com.ibm.watson.developer_cloud.personality_insights.v3.PersonalityInsights) Profile(com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile)

Aggregations

ProfileOptions (com.ibm.watson.developer_cloud.personality_insights.v3.model.ProfileOptions)12 Test (org.junit.Test)11 Profile (com.ibm.watson.developer_cloud.personality_insights.v3.model.Profile)10 WatsonServiceTest (com.ibm.watson.developer_cloud.WatsonServiceTest)7 File (java.io.File)5 FileInputStream (java.io.FileInputStream)5 WatsonServiceUnitTest (com.ibm.watson.developer_cloud.WatsonServiceUnitTest)4 Content (com.ibm.watson.developer_cloud.personality_insights.v3.model.Content)4 RecordedRequest (okhttp3.mockwebserver.RecordedRequest)3 ContentItem (com.ibm.watson.developer_cloud.personality_insights.v3.model.ContentItem)2 RequestBuilder (com.ibm.watson.developer_cloud.http.RequestBuilder)1 PersonalityInsights (com.ibm.watson.developer_cloud.personality_insights.v3.PersonalityInsights)1 ConsumptionPreferences (com.ibm.watson.developer_cloud.personality_insights.v3.model.ConsumptionPreferences)1 Date (java.util.Date)1